2017-08-24 331 views
-5

我試圖環路蟒蛇槽一個詞,檢查是否有字母是大寫然後EXCUTE一些代碼, 問題是if語句執行它內部的代碼,甚至當字母下限和上限。我只希望它在字母大寫時才能執行。蟒蛇if語句不返回

word = raw_input("enter a word: "); 
newword = "" 
count = 0 
for w in word:   
    if w.isupper: 
     print "checking";   
     newword += w.upper() 
     count += 1  
print newword 
+0

這是怎麼相關VS? –

+0

任何人與代表,請投票關閉,因爲這是脫離主題(錯字)。不要只是降低問題/答案。謝謝。 –

回答

2

您需要括號添加到您的通話isupper,像這樣:

w.isupper() 

當您不包括括號,它只是引用函數指針,它不爲空或空,因此if語句將其解析爲「true」。

+0

謝謝你們,我剛開始學習python,並且我一直在調試5小時, –

1

您在致電isupper()時忽略了括號,因此您嘗試訪問屬性isupper,該屬性不存在。

查看str.isupper() Python Docs的使用說明。

確認,解決方法是:

word = raw_input("enter a word: "); 
newword = "" 
count = 0 
for letter in word:   
    if letter.isupper(): 
     print "checking";   
     newword += letter.upper() 
     count += 1  
print newword 
+0

感謝您的貢獻 –

+0

@donpreciousiyeritufu您是否將此標記爲接受的答案,如果它解決了您的問題? – psilocybin