2015-06-21 72 views
-1

我想自己學習Python。我創建了一個Python文件來打印Hello,world!我的Python文件(稱爲試驗),我沒有在空閒或Python庫保存,是:Python IDLE回溯錯誤

def hello():            
    print "Hello,world!" 

當我跑在Python外殼爲hello()這個文件,錯誤是:

Traceback (most recent call last): 
File "<pyshell#2>", line 1, in <module> 
hello 
NameError: name 'hello' is not defined 

你能幫我解決這個問題的原因嗎?

+1

文章中的完整代碼.. –

+0

我被鏡像的樣本代碼,我在網上CS網站上發現,這是給了我們唯一的代碼。它會在Python Shell中根據它們的圖像打印出來:Hello,world!在hello()被調用之後。我現在非常困惑哈哈 – PianoGuitar

回答

0

我猜你的完整的代碼是這樣的:

hello() # this hasn't been defined yet 

def hello(): 
    println "Hello, world!" 

當你調用第1行hello(),該功能還沒有被定義因爲Python執行從開始到結束該腳本。移動函數調用了以下功能:

def hello(): 
    println "Hello, world!" 

hello() # now Python knows what hello is 
+0

嗨,謝謝你的回覆。我試過了,它仍然給出了同樣的錯誤。我想這可能與我的文件有關,但實際上在我保存時沒有另存爲.py文件。出於某種原因,文件類型只是「文件」。你知道爲什麼會發生這種情況嗎? – PianoGuitar

+0

你可以發佈你試圖運行的整個文件嗎?這將非常有幫助。 – joshreesjones

+0

你是如何運行這個程序的?您應該從Python的IDLE運行.py文件,或者使用python 命令運行它。 – joshreesjones