int类型

整数数据类型(int)是表示整数的数据类型。与其他计算机语言有精度限制不同,Python中的整数位数可以为任意长度(只受限制于计算机内存)。整型对象是不可变对象。

整型字面量

数字字符中(前面可以带负号“一”)即整型字面量。Python 解释器自动创建int型对象实例。

数字字符串通常被解释为十进制(基数为10),可以用前缀表示其他进制的整数,但跟在前缀后面的数字必须适合于数制。

数值

前缀

基本数码

十进制(以10为基)

0~9

十六进制(以16为基)

0x(0X)

0~9 和 A ~ F

八进制(以8为基)

0o(0O)

0~7

二进制(以2为基)

0b(0B)

0~2

整型字面量示例

a=123
type(a)
1_000_000_000_000_000
0x_FF_FF_FF_FF_FF_FF

----------------------打印结果-----------------------
int
1000000000000000
281474976710655

int对象

int是Python内置的数据类型,用户可以创建int类型的对象实例,其基本形式如下。

int(x=0) #创建int对象(十进制)

int(x, base= 10) #创建int对象,指定进制为base(2~ 36)

通过创建int对象可以把数值或任何符合格式的字符串或其他对象转换为int对象。

注意:如果对象x不能转换为整型,则导致TypeError;如果对象x转换失败,则导致ValueError.

int
int(),int(123),int("345")
int("FF",16),int("100",2)
int(100,2)      #TypeError: int() can't convert non-string with explicit base
int("abc")    #ValueError: invalid literal for int() with base 10: 'abc'

----------------------打印结果-----------------------
int
(0, 123, 345)
(255, 4)

---------------报错--------------------
TypeError Traceback (most recent call last)
in
2 int(),int(123),int(“345”)
3 int(“FF”,16),int(“100”,2)
----> 4 int(100,2)
5 #int(“abc”) #ValueError: invalid literal for int() with base 10: ‘abc’

TypeError: int() can’t convert non-string with explicit base

int对象的方法

int对象 i 包含的主要方法。

i.bit_length() #返回 i 的二进制位数,不包括符号

# 【例】 int 对象方法示例。

i= 2
i
bin(i)
i.bit_length()
int.bit_length(i)

----------------------打印结果-----------------------
2
‘0b10’
2
2

整数的运算

整数对象支持,关系运算,算数运算,位运算符,内置函数math模块中的数学运算函数以及int 对象方法等运算操作。

# 整数运算示例

import sys
a = int(sys.argv[1])
b = int(sys.argv[2])
sum  = a +  b
print(a, ' + ', b, ' = ', sum)