好的,我已将代码编辑到希望可以工作的位置,但出现 TypeError:不能将序列乘以“浮点”类型的非整数。
这是我拥有的代码:
uTemp = input("Enter Temperature Variable: ")
cOrF = input("Do you want C for celcius, or F for Farehnheit?: ")
if cOrF:
F = 1.8 * uTemp + 32
好的,我已将代码编辑到希望可以工作的位置,但出现 TypeError:不能将序列乘以“浮点”类型的非整数。
这是我拥有的代码:
uTemp = input("Enter Temperature Variable: ")
cOrF = input("Do you want C for celcius, or F for Farehnheit?: ")
if cOrF:
F = 1.8 * uTemp + 32
该错误告诉您不能将uTemp
字符串乘以浮点数 ( 1.8
)。这很有意义,对吧?弦的十分之八是多少?转换uTemp
为浮点数:
uTemp = float(input("Enter Temperature Variable: "))
您的下一个问题是将cOrF
其视为布尔(真/假)值,这意味着如果用户在该提示符处输入任何内容F
,则将计算该值,因为所有非空字符串在 Python 中都是真实的。所以你会写:
if cOrF == "F":
F = 1.8 * uTemp + 32
input()
在 python 3.x 中返回一个字符串。
将其转换为float
(或转换为int
- 取决于您的需要):
uTemp = float(input("Enter Temperature Variable: "))