我知道我可以使用num2words
,但是出于某种原因,我只是想不出如何让用户输入数字“ 197”,结果却是“一九七”而不是一百九十七”。到目前为止,我所看到的所有内容都将其更改为他们输入的实际数字,而我只需要打印他们输入的确切数字即可。抱歉,由于我对Python缺乏了解,从字面上看才刚刚起步,有些困惑。我目前正在使用它作为框架,但是由于我仍在学习中,它最多只能打印9个。
import math
number = int(input("Enter number to print: "))
number_list = ["zero","one","two","three","four","five","six","seven","eight","nine"]
if number <= 9:
print(number_list[number].capitalize())
答案 0 :(得分:1)
您尝试过地图吗?
input_number = input('Enter a number to print: ')
number_strings = ['zero', 'one', 'two', 'three',
'four', 'five', 'six', 'seven',
'eight', 'nine']
output_list = list(map(lambda x: number_strings[int(x)], input_number))
print(' '.join(output_list))
答案 1 :(得分:0)
使用上面定义的number_list
,您可以执行以下操作:
number = str(input("Enter number to print: "))
for digit in number:
print(number_list[int(digit)], end=" ")
一次打印一个数字。 end
参数指示在每个数字后应打印一个空格。