god_eyes 发表于 2020-9-9 16:12:13

float(input("请输入:")),一会不报错,一会说无法将str转换 成float

我用的是Python3.6.8
然后呢,标题上的问题,以前写代码的时候也没出现过啊,
float(input("请输入:")),这行代码有什么问题吗?
第一下,正常运行,让我输入
第二下,报错:无法将str转换成float

第二个问题是
F = float(input("请输入华氏温度:"))
F = float(input("请输入华氏温度:"))
第一行代码报错:SyntaxError: invalid character in identifier
第二行代码不报错,这是为什么

heidern0612 发表于 2020-9-9 16:14:56

一、大概是你想int化一个字符串类型的小数,报错是正常的。python只能int化一个字符串类型的整数。小数请用float。

二、提示你语法错误,含有非法字符。大概是缩进导致的,看你程序里面是不是中英文混用或有多余的空格了。

god_eyes 发表于 2020-9-9 16:15:00

卧槽,我写的时候没有‘’&#160‘’啊,帖子上为什么有

sunrise085 发表于 2020-9-9 16:17:57

代码没问题,是你输入的问题
input()函数的返回值是一个字符串
float()是吧一个字符串或其他类型的数字转为float类型,若括号内是字符串,也就是你这种情况,字符串不能有其他无关字符
float('1.2') #正确,可以转换
float('+2.5')#正确,可以转换
float('a1.2') #错误,不可以转换,会报错

god_eyes 发表于 2020-9-9 16:18:31


 

god_eyes 发表于 2020-9-9 16:19:31

测试了一下,第一行空格,
第二行从错误代码中拷贝的‘空格’,
发现真的有问题

god_eyes 发表于 2020-9-9 16:20:43

第一个问题,我也弄懂了,是因为我没有输入导致 的,空字符串也不能转换成float的
页: [1]
查看完整版本: float(input("请输入:")),一会不报错,一会说无法将str转换 成float