令人困惑的python-无法将字符串转换为float
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了令人困惑的python-无法将字符串转换为float,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1683字,纯文字阅读大概需要3分钟。
内容图文
![令人困惑的python-无法将字符串转换为float](/upload/InfoBanner/zyjiaocheng/695/bedd250b1f674df88d9d37babdafd0ed.jpg)
我遇到了一个值错误,即使我尝试使用代码,也无法正常工作!
我该如何正确处理? -我正在使用Python 3.3.2!
这是代码:
如您所见,该程序会询问您可以走多少英里,并根据您键入的内容给出响应.
这是文本格式的代码:
print("Welcome to Healthometer, powered by Python...")
miles = input("How many miles can you walk?: ")
if float(miles) <= 0:
print("Who do you think you are?!! Go and walk 1000 miles now!")
elif float(miles) >= 10:
print("You are very healthy! Keep it up!")
elif float(miles) > 0 and miles < 10:
print("Good. Try doing 10 miles")
else:
print("Please type in a number!")
miles = float(input("How many miles can you walk?: "))
if miles <= 0:
print("Who do you think you are?!! Go and walk 1000 miles now!")
elif miles >= 10:
print("You are very healthy! Keep it up!")
elif miles > 0 and miles < 10:
print("Good. Try doing 10 miles")
解决方法:
问题恰好是Traceback日志所说的:无法将字符串转换为float
>如果您的字符串只有数字,那么python足够聪明,可以执行您要尝试的操作,并将字符串转换为浮点数.
>如果您的字符串中包含非数字字符,则转换将失败并显示错误信息.
大多数人解决此问题的方法是使用try / except(请参见here)或使用isdigit()函数(请参见here).
尝试/除
try:
miles = float(input("How many miles can you walk?: "))
except:
print("Please type in a number!")
ISDIGIT()
miles = input("How many miles can you walk?: ")
if not miles.isdigit():
print("Please type a number!")
请注意,如果字符串中有小数点,则后者仍将返回false
编辑
好的,我暂时无法与您联系,所以我会尽快回答.
while True:
try:
miles = float(input("How many miles can you walk?: "))
break
except:
print("Please type in a number!")
#All of the ifs and stuff
该代码非常简单:
>它将继续尝试将输入转换为浮点数,如果输入失败则循环回到开头.
>最终成功时,它将脱离循环,转到您放下的代码.
内容总结
以上是互联网集市为您收集整理的令人困惑的python-无法将字符串转换为float全部内容,希望文章能够帮你解决令人困惑的python-无法将字符串转换为float所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。