2012-08-23 46 views
0

此腳本崩潰我的Python IDE:爲什麼這個python腳本會崩潰我的IDE?

def flashCard(word,definition): 
    print word + "\n" + definition 
    return word + definition 

def buildCard(): 
    word = input("Front?") 
    definition = input("Back?") 
    flashCard(word,definition) 



buildCard() 

我使用閒置的Mac OSX 10.7.4

+0

通過「崩潰」,你的意思是「提出了一個NameError」或「引發一個SyntaxError」? – DSM

+0

很好,這是不是你的原因IDE崩潰,但如果你返回'字+'從flashCard' definition'字符串,你可能應該這樣做:在'wordAndDef =燒錄卡(詞,定義)'你'buildCard'方法。否則,在返回任何東西時沒有意義 –

+1

您正在使用哪個版本的python? – Simon

回答

3

可能是因爲您正在使用的輸入(),嘗試更換輸入呼叫( )與raw_input()。 (只是猜測這裏,但可能是它取決於你正在運行的Python版本)在Python 2.x中輸入:

input([prompt]) 
Equivalent to eval(raw_input(prompt)). 

此功能不會趕上用戶錯誤。如果輸入不是 在語法上有效,則會引發SyntaxError。如果在評估過程中出現錯誤,則可能會引發其他例外 。

如果readline的模塊被加載,然後輸入()將使用它來提供 精心行編輯和歷史記錄功能。

考慮使用的raw_input()函數用於從用戶通用輸入。

+0

在Python 3輸入的所有*腳本的raw_input替換。但這可能是問題所在。 – Simon

+0

我更換了,它仍然崩潰。當你的IDE爆炸時,你知道你的代碼很糟糕。 – JaeGeeTee

+0

但是,它確實允許我的代碼從命令行正確執行。謝謝。 – JaeGeeTee