2011-08-27 32 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

沒錯,我沒有注意到問題中的錯誤描述。我所引用的內容會導致語法錯誤。 –