题目
输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出fu字。十个数字对应的拼音如下:
0: ling
1: yi
2: er
3: san
4: si
5: wu
6: liu
7: qi
8: ba
9: jiu
输入格式:
输入在一行中给出一个整数,如:1234。
提示:整数包括负数、零和正数。
输出格式:
在一行中输出这个整数对应的拼音,每个数字的拼音之间用空格分开,行末没有最后的空格。如 yi er san si。
输入样例:
-600
输出样例:
fu liu ling ling
代码
num = list(input()) #将输入的整数(其实在python3眼中是一个字符串)符号和每一位变成列表
#0:ling,1:yi等的规则,将列表的下标和数字拼音对应起来
read = ["ling","yi","er","san","si","wu","liu","qi","ba","jiu"]
# 如果输入的的负数,则第一个符号一定为'-',并进行与正数不一样的处理方式
if num[0] == "-":
print("fu ",end='') #读出符号
num.pop(0) #删除负数列表中的第一个元素,即'-'
# 如果是正数输入时已经全部是数字了,如果是负数,上面已经把负号做了删除操作
num = list( map (int,num) ) #将剩下的元素,由str类型转化为int类型,并形成新的列表
results = [read[i] for i in num] #用num作为下标,对应read列表中的元素,输出字符串
print(" ".join(results)) #按照 中间空一格,最后不空格 的格式输出字符串