0
私のmain()関数内の行で、関数norm(x)を呼び出すと名前エラーが発生します。これは私がこのプログラム全体で問題を抱えている唯一の機能です。私のプログラムがNameErrorを投げているのはなぜですか? 'norm'(x)に 'x'という名前が定義されていませんか?
def read_fp_numbers():
x = input('Please enter several floating point numbers separated
by spaces. ').split(' ')
x = [float(i) for i in x]
return(x)
def norm(x):
x = (sum(x))**(.5)
x = str(x)
return(x)
def display_norm(x):
print('norm =', x)
return(x)
def main():
read_fp_numbers()
norm(x)
display_norm(x)
main()
を撮影したことがない:'、 'X'が実際に定義されていません。他の 'x'は、その関数のローカルです。 – JulienD
関数で作成された変数はその中にのみ存在するので、xは定義したところにのみ存在します。基本的なチュートリアルを読むことをお勧めします。 – eyllanesc
fp_numbersを保存する必要があります(E.G. 'x = read_fp_numbers()') – ingroxd