原始需求:
从键盘接受一个正整数,列出该数字的中文表示格式,例如:键盘输入 123,打印出一二三;键盘输入 3103,打印出三一零三.(考验循环和列表的索引使用)
百度到的CSDN中的写法如下:
data = int(input('请输入一个正整数:')) cn_num = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九'] #0到9的数字对应的中文数字 print_answer = [] #存放打印的数字对应的中文字符 while data: print_answer.append(cn_num[data % 10]) data //= 10 for i in range(len(print_answer) - 1, -1, -1): print(print_answer[i], end='')
还可以考虑字典键值的方法:
my_dict = {'0':'零','1':'一','2':'二','3':'三','4':'四','5':'五','6':'六','7':'七','8':'八','9':'九'} while True: input_key = input('请输入整数:') try: if int(input_key)<0: raise BaseException() result = "".join([my_dict.get(i) for i in input_key]) print(result) break except: print(f"提示 :{input_key}不是正整数") break