2013-05-12 38 views
0

我的代碼經過精細跑,如果我輸入一個字,但是如果我想通過不輸入任何內容,只是按下回車鍵的時候問了名字,以測試它的「其他」部分,它返回「Oops,再試一次!當len(original)爲0時,你的代碼是否打印爲」空「? 爲了解釋,我正在嘗試完成codecademy課程。的if/else麻煩 - 別的不打印到控制檯

我環顧四周,我只是不明白爲什麼它不應該打印「空」到控制檯。任何人都有線索?這個錯誤是否與本課有關,或者在下面的代碼中確實存在一個錯誤,使它不能將「空白」打印到控制檯?

print "Welcome!" 
original = raw_input("Please enter a word") 
if len("original") > 0: 
    print original 
else: 
    print "empty" 

回答

7

你正在檢查一個字符串「原始」,這將永遠是比0更大的長度。

if len("original") > 0: 

改變這...

if len(original) > 0: 
+0

哎呀,現在我明白了,我感到非常無聊。非常感謝迅速的幫助! – nzash 2013-05-12 02:00:54

+0

@nzash - 不客氣。如果解決了您的問題,您可以接受答案。 – vidit 2013-05-12 03:09:10

1

變化("original")(original)。當某些內容被引用時,Python會將其評估爲字符串。因此,在這裏,您只是簡單地檢查總是會大於0的單詞「original」的長度。如果放入(原始),Python會將其評估爲您之前定義的變量。

一言以蔽之:你想要的功能來評價一個變量,不是字符串常量(這是由「」定義)。

+1

感謝你! – nzash 2013-05-12 02:02:54