入力によって売上額を取得し、定義済みの消費税 (0.08) を掛けて、合計額 (消費税 × 売上額) を印刷するように入力しています。
このエラーが発生しました。何が間違っているのか、または何か提案はありますか?
salesAmount = raw_input (["Insert sale amount here \n"])
['Insert sale amount here \n']20.99
>>> salesTax = 0.08
>>> totalAmount = salesAmount * salesTax
Traceback (most recent call last):
File "<pyshell#57>", line 1, in <module>
totalAmount = salesAmount * salesTax
TypeError: can't multiply sequence by non-int of type 'float'
ベストアンサー1
raw_input
文字列 (文字のシーケンス) を返します。Python では、文字列と浮動小数点数を掛け合わせても意味は定義されません (文字列と整数を掛け合わせると意味があります:"AB" * 3
は です"ABABAB"
。 はいくらですか"L" * 3.14
? と返信しないでください"LLL|"
)。文字列を解析して数値にする必要があります。
次のようなことを試してみてください:
salesAmount = float(raw_input("Insert sale amount here\n"))