2016-03-09 40 views
0

我不得不在我的編程類中爲我的期中編寫代碼,這只是代碼的一小部分。請記住我對編程真的很陌生,並且這是一個介紹類。任何人都可以澄清爲什麼這個簡單的代碼不能在python 2.7中工作嗎?

我們在課堂上學習3.5,我寫的代碼在3.5中正常工作。然而,我開始嘗試和學習2.7和此代碼不進行這項工作:

print ("is student 1 here?") 
attendence1 = input() 
if attendence1 == "yes": 
    student1 = "Y" 
if attendence1 != (str("yes")): 
student1 = ("N") 

我只是好奇,這個問題是版本之間什麼,以及如何讀取3.5 VS它2.7如何做。我注意到,如果我以2.7的字符串輸入我的答案,它將起作用,即: 問:學生2在這裏嗎? - 答:「是」 不會導致錯誤,怎麼樣 問:是學生2在這裏? A是 導致它給我

attendence1 = input() 
File "<string>", line 1, in <module> 
NameError: name 'yes' is not defined 

我怎麼會做出2.7此代碼的工作?

+0

使用'而不是raw_input' input'的''爲2.7' – inspectorG4dget

+1

見http://stackoverflow.com/questions/4915361/whats-the-difference-between-raw-input-並輸入在python3-x – Ben

+0

可能重複[Python輸入()錯誤 - NameError:名稱'...'未定義](http://stackoverflow.com/questions/21122540/python-input-error -nameerror-name-is-not-defined) – vaultah

回答

0
attendence1 = raw_input("is student 1 here?\n") 
if attendence1 == "yes": 
    student1 = "Y" 
else: 
    student1 = "N" 

需要使用raw_input()而不是輸入。此外,我想你想"N"("N")

+0

謝謝先生!不確定 –

相關問題