1. Python 中的数据类型
① 整数类型:int -> 3
② 浮点类型: float -> 3.14159
③ 布尔类型: bool -> True,False
④ 字符串类型: str -> '人生苦短,我用Python'
2. 整数类型
英文类型:Integer,简写int,可以表示正数和负数。
进制 | 基本数 | 逢几进一 | 表示形式(开头) |
十进制 | 0,1,2,3,4,5,6,7,8,9 | 10 | 默认 |
二进制 | 0,1 | 2 | 0b开头 |
八进制 | 0,1,2,3,4,5,6,7 | 8 | 0o开头 |
十六进制 | 0,1,2,3,4,5,6,7,8,9, A,B,C,D,E,F | 16 | 0x开头 |
下面给出示例代码:
# 作 者:要努力,努力,再努力
# 开发日期:2022/4/10 13:40
# 1. 整数类型 可以表示正数、负数、0
print('1. 整数类型 可以表示正数、负数、0')
n1 = 97
n2 = -32
n3 = 0
print(n1, type(n1))
print(n2, type(n2))
print(n3, type(n3))
# 2. 整数类型 可以表示十进制、二进制、八进制、十六进制
print('2. 整数类型 可以表示十进制、二进制、八进制、十六进制')
print('十进制', 118) # 默认是十进制
print('二进制', 0b1010111) # 二进制以0b开头
print('八进制', 0o176) # 八进制以0o开头
print('十六进制', 0x1EAF) # 十六进制以0x开头
代码执行结果:
3. 浮点类型
最普通的形式如下
# 作 者:要努力,努力,再努力
# 开发日期:2022/4/10 13:54
a = 3.14159
print(a, type(a))
代码输出结果:
但是,由于计算机的以二进制的形式进行存储的,浮点数的计算会出现不精确的情况。例如:
n1 = 1.1
n2 = 2.2
print(n1+n2)
猜猜代码执行结果是什么?是3.3吗?nonono,是这样的:
解决方案:需要导入Decimal模块,代码如下
from decimal import Decimal
print(Decimal('1.1') + Decimal('2.2'))
输出结果就是3.3了
当然,不是所有的浮点数相加都会出现这种不精确的情况,例如
n1 = 1.1
n3 = 2.1
print(n1+n3)
输出结果就是3.2。
附上完整代码~
# 作 者:要努力,努力,再努力
# 开发日期:2022/4/10 13:54
a = 3.14159
print(a, type(a))
n1 = 1.1
n2 = 2.2
n3 = 2.1
print(n1 + n2)
from decimal import Decimal
print(Decimal('1.1') + Decimal('2.2'))
print(n1+n3)
4. 布尔类型
布尔类型的取值只有两种,一种是真,另一种是假。
True代表真,False代表假。
True表示1,False表示0。
# 作 者:要努力,努力,再努力
# 开发日期:2022/4/10 14:08
f1 = True
f2 = False
print(f1, type(f1))
print(f2, type(f2))
# 布尔类型可以转成整数计算
print(f1 + 1) # 即是:1+1=2
print(f2 + 1) # 即是:0+1=1
5. 字符串类型
字符串类型可以用单引号、双引号、三引号来进行表示。
单引号和双引号可以在一行显示,三引号可以用多行显示。
# 作 者:要努力,努力,再努力
# 开发日期:2022/4/10 14:15
str1 = '人生苦短,我用Python'
print(str1, type(str1))
str2 = "人生苦短,我用Python"
print(str2, type(str2))
str3 = """人生苦短,
我用Python"""
print(str3, type(str3))
str4 = '''人生苦短,
我用Python'''
print(str4, type(str4))
代码执行结果:
但是如果这样写会报错:
【Python 的数据类型 就是这些~如有不对之处,欢迎批评指正。】