2017-07-28 71 views
-1

我有蟒蛇3功课要做,如果使用,ELIF,否则,.isdigit,.isalpha但我不知道为什么它不工作..错误与Python 3功课

NumWord = "" 

def str_analysis(): 
    if NumWord.isalpha() == True: 
     print(NumWord, "is all alphabetical characters!") 
    elif NumWord.isdigit() == True: 
     if int(NumWord) == 100: 
      print("You found the right number!") 
     elif int(NumWord) >= 99: 
      print(NumWord, "is a pretty big number") 
     elif int(NumWord) <= 99: 
      print(NumWord, "is a smaller number than expected") 

while NumWord.isalnum() == False: 
    NumWord = input("Enter a word or integer: ") 
+2

什么不工作?你能稍微详细地解释你的问题吗? – Nisarg

+0

当我运行代码,输入工作,当我什么都没输入,输入回来,但如果我输入的东西,它什么都不做,并停止代码 – Chronoxx

+0

文体学点:不明确比较'真'和'虚假'。 – EJoshuaS

回答

2

你需要实际调用你写的功能:

while NumWord.isalnum() == False: 
    NumWord = input("Enter a word or integer: ") 
str_analysis() 
+0

'str_analysis()'调用应该是缩进的 - 你不会调用它,直到你有一个有效的* alnum *,因为它只处理* alpha *和* num *。 – cdlane

+0

嗯,我试过并更改为您的代码,但它仍然不让我运行代码.. – Chronoxx

+0

谢谢@cdlane - 修复。我 –