我的程序接受用户输入,例如:
>>> x = input()
>>> 1
>>> print x
>>> one
我的实际代码:
>>> import string
>>> numbers = ['0','1','2','3','4','5','6','7','8','9']
>>> wordNumbers = ['zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine']
>>> myDict = dict(zip(numbers, wordNumbers))
>>> myVar = (raw_input("Enter a number to be tranlated: "))
>>> for translate in myVar.split():
>>> print(myDict[translate])
问题是我需要用户输入123
和我的程序输出one two three
,但它不是出于某种原因。
我在想,如果我在123
1 2 3
之间添加一些带有某种语法的空格,那就行了。
答案 0 :(得分:7)
您只需使用:
for translate in myVar:
而不是:
for translate in myVar.split():
对字符串进行迭代会逐一为您提供字符,这就是您所需要的。
如果您确实要将'123'
转换为'1 2 3'
(此处不需要,因为您不需要使用split
),您可以使用:
' '.join(myVar)