python3 基本数据类型:基本数字类型
基本数字类型
- Python3 支持 int、float、bool、complex(复数)。
- 整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点。Python3 整型是没有限制大小的,可以当作 Long 类型使用,所以 Python3 没有 Python2 的 Long 类型。
- 浮点型(float) - 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2)。
- 复数((complex)) - 复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。
- 在 Python2 中是没有布尔型的,它用数字 0 表示 False,用 1 表示 True。到 Python3 中,把 True 和 False 定义成关键字了,但它们的值还是 1 和 0,它们可以和数字相加。
内置的 type() 函数可以用来查询变量所指的对象类型:
a,b,c,d = 10,3.2,True,4+3j
print(type(a),type(b),type(c),type(d))
输出:
<class 'int'> <class 'float'> <class 'bool'> <class 'complex'>
还可以用 isinstance 来判断是否为指定的数据类型:
a,b,c,d = 10,3.2,True,4+3j
print(isinstance(a,int)) #True
print(isinstance(a,str)) #False
进制表示
- 十进制:
- 二进制:0b,0B
- 八进制:0o,0O
- 十六进制:0x,0X
var1 = 0b110
var2 = 0o10
var3 = 0x11
print(var1,var2,var3) #6 8 17
isinstance 和 type 的区别
- type()不会认为子类是一种父类类型。
- isinstance()会认为子类是一种父类类型。
>>> class A:
... pass
...
>>> class B(A):
... pass
...
>>> isinstance(A(), A)
True
>>> type(A()) == A
True
>>> isinstance(B(), A)
True
>>> type(B()) == A
False
数字对象创建与删除
- 当给数字指定一个值之后,数字对象就被创建。
- 删除对象使用del。
var1 = 1
var2 = 10
var3 = 100
print(var1,var2) #1 10
del var1
print(var1) #NameError: name 'var1' is not defined
#同时删除多个变量
del var2,var3
Python 数字类型转换
- int(x) 将x转换为一个整数。
- float(x) 将x转换到一个浮点数。
- complex(x) 将x转换到一个复数,实数部分为 x,虚数部分为 0。
- complex(x, y) 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字表达式。
获取复数的实部和虚部:
cn = complex(2,3)
print("Complex Number: ",cn) #Complex Number: (2+3j)
print("Complex Number - Real part: ",cn.real) #Complex Number - Real part: 2.0
print("Complex Number - Imaginary part: ",cn.imag) #Complex Number - Imaginary part: 3.0