2017-02-28 82 views
-3

我做錯了什麼?我在做什麼錯?請

num = [] 
inp = raw_input("please enter a series of numbers separated by a space\n") 
num = [ int(i) for i in inp.split()] 
print(num) 

quit_program = input("Would you like the average or would you like to quit?") 
if quit_program == quit: 
    quit() 
elif quit_program == average: 
    print mean(num) 

口口聲聲說這

quit_program = input("Would you like the average or would you like to quit?") 
    File "<string>", line 1, in <module> 
NameError: name 'average' is not defined 
+0

您還沒有定義的變量'average' – Zroq

+1

是的,因爲沒有在''average'變量定義和'quit'如果quit_program ==退出:'指*函數*'quit()' –

+0

我想你的意思是「退出」和「平均」作爲字符串,所以這些應該在引號中。 – String

回答

1

你的堆棧跟蹤說:

在線:quit_program = input("<snip>")它獲得誤差NameError: name 'average' is not defined當你鍵入average

在Python2.7

input()運行任何你輸入(它相當於eval(raw_input())。在這種情況下,它試圖運行average這是用戶的輸入。你只想raw_input()

然後你要比較的是輸入爲字符串,因爲人們建議:。

quit_program = raw_input("Would you like the average or would you like to quit?") 
if quit_program == "quit": 
    quit() 
elif quit_program == "average": 
    print mean(num) 
0

還沒有定義退出和平均。 您正在檢查用戶輸入,它是一個字符串。 字符串需要「引號」在他們周圍。 這是件好事: 「我是一個字符串」 這是不好: 我不是一個字符串

+0

只要非常清楚,它可以是單引號或雙引號。 ''我是一個字符串''或''我是一個字符串'''兩者都很好。 –

+0

@FredLarson好吧,我真的不使用Python,所以我不知道單引號的工作。 –