私はデジタル記憶装置を変換するプログラムを作っています。同様に、いくつのビットがメガビットの量であるのかを尋ねることができます。私はif文でテストしていますが、答えを出力することはできません。この行でPython 2.7印刷でのトラブル
import re
UNITS = ["bit", "byte", "exabit", "exabyte", "gigabit", "gigabyte",
"kilobit", "kilobyte", "megabit", "megabyte", "petabit", "petabyte",
"terabit", "terabyte"]
PLURAL_UNITS = ["bits", "bytes", "exabits", "exabytes", "gigabits",
"gigabytes", "kilobits", "kilobytes", "megabits", "megabytes", "petabits",
"petabytes", "terabits", "terabytes"]
PROMPT_1 = "How many "
PROMPT_2 = "are in "
def convert():
first_unit = raw_input(PROMPT_1)
second_unit = raw_input(PROMPT_2)
number_of = re.findall('\d+', second_unit)
number = number_of[0]
if first_unit == PLURAL_UNITS[0] and second_unit == " " + PLURAL_UNITS[1]:
answer = float(number)*8
print(answer)
convert()
正確にはどのようなことが起こり、期待される結果とどのように違うのですか? – stybl
2番目の生の入力にスペースを追加していますか?これはあなたが – marsh
@ styblをチェックしているからです。答えを表示すると思っていますが、IDLEシェルのコマンドラインプロンプトにスキップするだけです。 –