Erlo

Python中int()强制类型转换

2021-01-27 09:00:34 发布   345 浏览  
页面报错/反馈
收藏 点赞

小编在学习Python的时候发现了一个有趣的类型转换,今天就分享给大家。

a=12.8 print(type(12.8)) print(int(12.8))

运行结果很明显:


12

接下来就是有些疑惑的地方了。

a = input("input:")
print(type(a))
print(int(a))

不同的输入有不同的输出结果,当输入小数时,会报错;当输入整数时却可以正常运行。

input:12.8

Traceback (most recent call last):
 File "D:/PycharmProject/Study/Chapter3.py", line 66, in
   print(int(a))
ValueError: invalid literal for int() with base 10: '12.8'

input:12

12

一个方法是:

a = input("input:") print(type(a)) print(int(float(a)))

将类型进行两次转换,得到了想要的结果:

input:12.8

12

也有人给出了更好的办法:

a = eval(input("input:")) print(type(a)) print(int(a))

得到的结果:

input:12.8

12

两种方法都分享给大家,根据适合自己的随便挑选。更多Python学习推荐:JQ教程网Python大全

您可能感兴趣的文章:

登录查看全部

参与评论

评论留言

还没有评论留言,赶紧来抢楼吧~~

手机查看

返回顶部

给这篇文章打个标签吧~

棒极了 糟糕透顶 好文章 PHP JAVA JS 小程序 Python SEO MySql 确认