python中常用的数据类型之整型,int,浮点型

python中的常用数据类型:整型(int),浮点型(float),布尔型(bool),复数型(complex), 字符串(str), 列表(list), 元组(tuple),字典(dict),集合(set)

python数据类型之整型(int)

在python中整形用来表示整数,包括负整数和正整数和0,没有小数部分,而数据的表现类型有二进制,八进制,十进制,十六进制。

# 十进制整数
int_decimalism = 8
print("int_decimalism的数据类型是:", type(int_decimalism))
# int_decimalism的数据类型是: <class 'int'>

# 二进制整数
int_binary = 0b1001
print("int_binary的数据类型是:", type(int_binary))
# int_binary的数据类型是: <class 'int'>

# 八进制整数
int_octal = 0o472
print("int_octal的数据类型是:", type(int_octal))
# int_octal的数据类型是: <class 'int'>

# 十六进制整数
int_hexadecimal = 0x12a3c
print("int_hexadecimal的数据类型是:", type(int_hexadecimal))
# int_hexadecimal的数据类型是: <class 'int'>
整数类型理论取值是负无穷到正无穷,但是实际取值范围受限于计算机的内存
32位的操作系统:-2**31~ 2**31-1
64位的操作系统:-2**63~ 2**63-1
python中常见的数据类型之浮点型(float)
浮点数包括正浮点数和浮点数,浮点型表现的形式有:十进制形式,科学计数形式。只有浮点型才可以使用科学计数形式,比如十进制形式浮点数314,用科学计数形式表示为3.14e2
# 浮点数之十进制表现形式
f1 = 3.14
print("f1的数据类型是:", type(f1))
# f1的数据类型是: <class 'float'>

# 浮点数之科学计数形式
f2 = 3.14e2
print("f2的数据类型是:", type(f2))
# f2的数据类型是: <class 'float'>

# 负浮点数
f3 = -3.14
print("f3的数据类型是:",type(f3))
# f3的数据类型是: <class 'float'>

# 负浮点数的科学计数形式
f4 = -3.14e2
print("f4的数据类型是:",type(f4))
# f4的数据类型是: <class 'float'>

# 浮点数的表现形式还有只带一个小数
f5 = 3.
print("f5的数据类型是:", type(f5))
# f5的数据类型是: <class 'float'>

浮点数并不像整型一样,浮点数计算的结果并不是精确的

f6 = 3.1415
f7 = 5.1413
print("f6和f7的乘积是:", f6 * f7)
# f6和f7的乘积是: 16.151393950000003

# 如果要对浮点数进行精确运算,需要导入decimal模块
import decimal
print("两个浮点数相乘的结果:", decimal.Decimal("3.1415") * decimal.Decimal("5.1413"))
# 两个浮点数相乘的结果: 16.15139395

一般计算机精确的数位为小数点后15位,如果想要再精确到后面的数位

# 如果要对浮点数进行精确运算,需要导入decimal模块
import decimal

# 指定精确位数
decimal.getcontext().prec = 20
print("两个浮点数相乘的结果:", decimal.Decimal("3.14159264543") * decimal.Decimal("5.1413564773"))
# 两个浮点数相乘的结果: 16.152047696619572744

python的常用数据类型之布尔类型

布尔类型就是用来判断数据或者表达式的真假,布尔类型只有True和False,而且我们可以把True当成整数1,False当成整数0

a = 1
print("False加上a的值是:", False+a )
# False加上a的值是: 1

print("True加上a的值是:", True+a )
# True加上a的值是: 2

一切代表空的数据类型的布尔值为False

print("0的布尔值是:", bool(0))
print("{}的布尔值是:", bool({}))
print("()的布尔值是:", bool(()))
print("[]的布尔值是:", bool([]))
print("None的布尔值是:", bool(None))
# {}的布尔值是: False
# ()的布尔值是: False
# []的布尔值是: False
# None的布尔值是: False

当一个表达的判断结果是正确的时候,它的布尔值是True,当一个表达式的判断结果是错的,它的布尔值是False,比如

a = 1
b = 2
print("a > b 的布尔值是:", bool(a > b))
print("a < b 的布尔值是:", bool(a < b))
# a > b 的布尔值是: False
# a < b 的布尔值是: True

python中常用数据类型之复数

复数是由实部和虚部组成的,复数的表达式为:real + imag*1j

C = 1 + 5j
print("C的数据类型是:", type(C))
# C的数据类型是: <class 'complex'>

复数的实部和虚部的数值都是浮点型

C = 1 + 5j
print("C的数据类型是:", type(C))
# C的数据类型是: <class 'complex'>

print("C的实部:", C.real)
# C的实部: 1.0

print("C的虚部:", C.imag)
# C的虚部: 5.0

几种数据类型的相互转换

转换为整形

a = 1
b = 3.14
c = "2"
e = int(b)
f = int(c)
g = int()
print("e的数据类型是:", type(e), "="*5, "e的值为:", e)
print("f的数据类型是:", type(f), "="*5, "f的值为:", f)
print("g的数据类型是:", type(g), "="*5, "g的值为:", g)
# e的数据类型是: <class 'int'> ===== e的值为: 3
# f的数据类型是: <class 'int'> ===== f的值为: 2
# g的数据类型是: <class 'int'> ===== g的值为: 0

转换为浮点型

a = 1
b = 3.14
c = "2"

e = float(a)
f = float(c)
g = float()
print("d的数据类型是:", type(e), "="*5, "e的值为:", e)
print("f的数据类型是:", type(f), "="*5, "f的值为:", f)
print("e的数据类型是:", type(g), "="*5, "g的值为:", g)
# d的数据类型是: <class 'float'> ===== e的值为: 1.0
# f的数据类型是: <class 'float'> ===== f的值为: 2.0
# e的数据类型是: <class 'float'> ===== g的值为: 0.0

转换为复数类型

a = 1
b = 3.14
c = "2"
h = complex(a, b)
i = complex(b, a)
j = complex(c)
print("h的数据类型是:", type(h), "="*5, h)
print("i的数据类型是:", type(i), "="*5, i)
print("j的数据类型是:", type(j), "="*5, j)
# h的数据类型是: <class 'complex'> ===== (1+3.14j)
# i的数据类型是: <class 'complex'> ===== (3.14+1j)
# j的数据类型是: <class 'complex'> ===== (2+0j)