2017-02-28 17 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

をあなたは – Zroq

+1

は、はいaverage''変数を定義していないと 'quit'場合'でquit_program ==終了します。 ' *関数* 'quit()'を指します –

+0

文字列として "quit"と "average"を意味すると思いますので、引用符で囲んでください。 – String

答えて

1

ないです:行で

quit_program = input("<snip>")あなたが入力したときに、それは誤りNameError: name 'average' is not definedを取得average。 Python2.7で

input()は、あなたが入力し何でも動作します(それがeval(raw_input())と同等です。この場合には、ユーザーの入力したaverageを実行しようとしている。あなただけraw_input()をしたい。

次に、あなたがその入力を比較したいです文字列に、人々が示唆されているとおり。定義されて `average`変数がないため

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を使用しないので、私はちょうど一重引用符についても知っていませんでした。 –

関連する問題