序数词
|
给定数字,添加对应的英语序数词缀(例如1st, 2nd, 3rd, 112th等)后输出。
输入数据的范围在0到999(包括0和999)之间。
|
本题难度:
|
解答
|
以1,2,3结尾但不以11,12,13结尾的数分别对应后缀st,nd,rd,其余词的后缀均为th。
将输入模余转化为列表下标,在列表中选词即可。
最终代码有两行。
代码长度:108字节 vs. 全站第一:81字节。
import sys
for a in sys.argv[1:]:b=int(a);print(a+(["st","nd","rd"]+["th"]*7)[b%10-1+3*(b%100in[11,12,13])])
|
| |