Python3 int() 函数详解 将字符串或者数字转换为十进制整数
int()
函数的主要作用是将一个字符串或者数字转换为十进制整数,假设参数为x。如果x不是数字或者给定了base(基数)参数,则x必须是字符串、字节或者bytearray实例;如果x为浮点型,则小数位会被直接舍去,且不会四舍五入;如果x对象中定义了__int__()方法,则使用__int()__的返回值,如果定义了__trunc()__方法,则使用__trunc__()的返回值,同时定义了__int__()和__trunc()__的情况下,以__int()__为准。
它是Python的内置函数,在python文件中直接可以使用。
语法
int(x, base=10)
参数
x(可选) - 指定需要转换的值,一般为字符串或者其他数字。如不设置,返回0。
base(可选) - 指定x的基数,默认是10进制,如果转换的值是2、4、8、16、32进制的需要使用base指定。
返回值
十进制整数
实例
§ 实例1 - 字符串或数字
#字符串
>>> int("100")
100
#浮点数,无论小数点多大,都会被舍去,不会四舍五入的。
>>> int(100.99)
100
#2进制
>>> int("1100100", base=2)
100
#带前缀的2进制
>>> int("0b1100100", base=2)
100
#4进制
>>> int("1210", base=4)
100
#8进制,带前缀的“0o144”结果一致。
>>> int("144", base=8)
100
#16进制,带前缀的“0x64”结果一致
>>> int('64', base=16)
100
#32进制
>>> int('34', base=32)
100
§ 实例2 - int()和trunc()
#仅设置了__int__()
>>> class main:
... def __int__(self):
... return 123
...
>>> o = main()
>>> int(o)
123
#仅设置了__trunc__()
>>> class main:
... def __trunc__(self):
... return 456
...
>>> o = main()
>>> int(o)
456
#同时设置了__int__()和__trunc__()的话,以__int__()为准。
>>> class main:
... def __int__(self):
... return 123
... def __trunc__(self):
... return 456
...
>>> o = main()
>>> int(o)
123