2011-08-27 24 views
-7

如何从用户获取整数输入并将其存储到数组中?并一旦存储打印它。 Iv试图这样做,但我得到的错误'数字'没有定义:S请帮助,如何打印数组内容(在python中)?

number = [] 

if __name__=="__main__": 
x = int(raw_input("Enter a number:")) 
number.append(x) 
print number 

在此先感谢!

+4

您发布的代码应该可以正常工作(假设缩进是一个复制和贴纸错误)。你得到了什么确切的错误? –

+2

请发布真实代码 –

+4

-1不要发布真实的代码,但没有任何问题,您的真实代码的例子。 – ThiefMaster

回答

0

尝试改变最后一行: 打印STR(数字)

这将改变列表转换为可打印字符串表示。

如果您想了解更多关于字符串和格式的信息,请查看Python教程的第7章。其实,整个教程非常棒。 :)

编辑:大卫是正确的,他的评论如下...打印自动转换为字符串列表(我想它是这样的任何类型与定义的字符串转换)。我仍然是一个小菜鸟。 :p

无论如何,我只是在Python解释器中检查了你的代码,并且它工作正常(就像LukášLalinský说的那样)。你检查过你的缩进吗?另外,如果您碰巧使用Python3,则需要将打印转换为函数,例如: print(number)

+2

print将为你做 –

+0

print自动调用与手动调用'str(x)'相同的对象'__str__'方法。这很可能是一个缩进错误,或者他应该为'number'添加'全局'声明。 – immortal

+0

谢谢。除非他使用Python 3,否则我会觉得它是缩进的。尽管如此,在这种情况下全局声明是否会起作用? –

2

我的猜测是您在实际代码中出现了字母大小写错误。您可以定义数字,但可以打印数字,反之亦然。 Python中的名称区分大小写。

或者也许你有一个函数中的代码试图访问在函数外声明的数字。

没有看到您的实际代码很难说,我们必须猜测!

0

我不确定你收到了什么错误,因为这是有效的Python 2.x,但是如果你碰巧使用的是较少使用的3.x,那么你可能会看到的一些代码示例关于print将是不正确的。在Python版本3+中,print不再是一个特殊的声明,而是一个函数。因此,如果是这种情况,您应该做print(number)而不是print number

+0

但是Python 3会给我一个不同的错误。 –

+0

没错,我没有注意到问题中的错误描述。我所引用的内容会导致语法错误。 –