这是我在编辑器上编辑并在shell上编译的代码
如果我输入整数19,当我打印出c时,它仍然是['1','9']
而不是我想要的[1,9]
。我在交互式解释器上尝试了这个,而不是编译python文件而且它有效。
a = raw_input("Please enter a positive number ")
c = []
c = list(a)
map(int, c)
答案 0 :(得分:4)
您需要将map
输出重新分配给c
,因为它不是就地
>>> a=raw_input("Please enter a positive number ")
Please enter a positive number 19
>>> c = list(a)
>>> c = map(int,c) # use the list() function if you are using Py3
>>> c
[1, 9]
请参阅docs on map
将函数应用于iterable的每个项目, 返回结果列表 。
(强调我的)