当前位置: 首页 > 图灵资讯 > 行业资讯> Python int()使用小结

Python int()使用小结

来源:图灵python
时间: 2024-10-09 18:31:31

Python int()使用小结

int()的基本语法格式是int(x,[base=10]),其中base可以省略

int()的作用是把不同进制的数字或数字字符串转为十进制整数。使用中,其行为,参数有一些tricky,需要特别注意。

不带参数返回0,即int()

>>>int()
0

取整是简单截断,不是四舍五入,如int(1.5) = 1

>>>int(1.5)
1

参数可以是整数,浮点数,或算术表达式如100/3,但不能是复数,如1+2j

>>>int(3)
3
>>>int(3.5)
3
>>>int(100/3)
33
>>>int(1+2j)
Traceback(mostrecentcalllast):
File"<pyshell#0>",line1,in<module>
int(1+2j)
TypeError:can'tconvertcomplextoint

数字字符串可以是整数字符串如’123’,但不能是算术表达式字符串如’100/3’,或字符形式的浮点数如’1.5’

>>>int('123')
123
>>>int(100/3)
33
>>>int('100/3')
Traceback(mostrecentcalllast):
File"<pyshell#2>",line1,in<module>
int('100/3')
ValueError:invalidliteralforint()withbase10:'100/3'
>>>int('1.5')
Traceback(mostrecentcalllast):
File"<pyshell#6>",line1,in<module>
int('1.5')
ValueError:invalidliteralforint()withbase10:'1.5'

base缺省值是10,表示十进制,如果包括base参数,则前面的x必须是符合当前进制的数字字符串此时int的作用是把base进制代表的数字字符串x,转换为10进制数

>>>int('45',8)#把8进制'45'转换为十进制数37
37

>>>int('ab',16)#
171

>>>int(45,8)
Traceback(mostrecentcalllast):
File"<pyshell#8>",line1,in<module>
int(45,8)
TypeError:int()can'tconvertnon-stringwithexplicitbase
>>>int(ab,16)
Traceback(mostrecentcalllast):
File"<pyshell#9>",line1,in<module>
int(ab,16)
NameError:name'ab'isnotdefined

本文转载自:https://blog.csdn.net/