我想将用户输入限制为固定长度,然后必须乘以它。我希望C
的值是一个整数。我怎么得到这个?
def F_to_C():
F=int(input("enter the F value:"))
if len(F) >3:
print("input is too long")
else:
C=(F-32)*(5/9)
print("the corresponding celcius value is: ",C)
我的错误:
if len(F)>3:
TypeError: object of type 'int' has no len()
答案 0 :(得分:2)
我认为您是指1000
下的意思:
def F_to_C():
F=int(input("enter the F value:"))
if F>999:
print("input is too long")
else:
C=(F-32)*(5/9)
print("the corresponding celcius value is: ",C)
然后:
F_to_C()
示例输出:
enter the F value:234
the corresponding celcius value is: 112.22222222222223
如果要为整数(舍入):
def F_to_C():
F=int(input("enter the F value:"))
if F>999:
print("input is too long")
else:
C=round((F-32)*(5/9))
print("the corresponding celcius value is: ",C)
如果只想舍入成为数字部分:
def F_to_C():
F=int(input("enter the F value:"))
if F>999:
print("input is too long")
else:
C=int((F-32)*(5/9))
print("the corresponding celcius value is: ",C)
答案 1 :(得分:1)
因此,我认为错误消息非常清楚:变量F
是整数,并且没有len()
。试试这个:
def F_to_C():
F = input("enter the F value:")
if len(F) > 3:
print("input is too long")
else:
C=(int(F)-32)*(5/9)
print("the corresponding celcius value is: ",C)
或@ U9-Forward中的代码
答案 2 :(得分:1)
F=int(input("enter the F value:"))
读取一个字符串并将其转换为int
if len(F) >3:
在这里您尝试读取int的长度,这是不可能的
尝试一下:
def F_to_C():
F=input("enter the F value:")
if len(F) >3:
print("input is too long")
else:
C=(int(F)-32)*(5/9)
print("the corresponding celcius value is: ",C)
首先它将检查字符串F的长度,然后在计算C时将F转换为整数。