私は、インチをセンチメートルに変換するための簡単な小さなツールを作成しようとしていますが、別の変換を行うか終了するかを決定するためにユーザー入力 (「y」または「n」) を取得しようとして立ち往生しています。これが私がやったことです:
import time
def intro():
print "Welcome! This program will convert inches to centimeters for you.\n"
convert()
def convert():
input_cm = input(("Inches: "))
inches_conv = input_cm * 2.54
print "Centimeters: %f\n" % inches_conv
time.sleep(3)
restart = str(input("Do you wish to make another conversion? [y]Yes or [n]no: "))
if restart == 'y':
convert()
elif restart == 'n':
end_fast()
else:
print "I didn't quite understand that answer. Terminating."
end_slow()
def end_fast():
print "This program will close in 5 seconds."
time.sleep(5)
def end_slow():
print "This program will close in 30 seconds."
time.sleep(30)
intro()
これにより、次の結果が得られます。
トレースバック (最後の最後の呼び出し): ファイル "C:\Users\Sam\Programming\Python\the hard way\ex5.4.py"、29 行目、intro() ファイル "C:\Users\Sam\Programming\ Python\the hard way\ex5.4.py"、5 行目、intro convert() ファイル "C:\Users\Sam\Programming\Python\the hard way\ex5.4.py"、12 行目、convert restart = str(input("Do you want to make another conversion? [y]Yes or [n]no?\n")) File ""、line 1、NameError: name 'y' is not defined
助けていただければ幸いです。