- 数值型
- 整数
- 浮点数
- 复数
- 字符串类型
- 布尔类型
- 类型转换
数值型Python 有多种基本数据类型,用来存储内存中的数据。Python 一共提供了三种基本数据类型,其中分为是:数值型、字符型、布尔型。
数值型就是用来存储数字的类型,例如一个人的年龄,身高,体重,一家公司的年度营收,员工总数等等。
在 Python 中,提供了数字类型来保存这些数据,并且这些数值类型是不可改变的数据类型。如果需要修改数字类型变量的值,那么会先把该值放入内存中,然后修改变量让其指向新的内存地址。
例如:
a = 10 b = 10 print(id(a)) print(id(b)) a = 12 print(id(a)) print(id(b))
运行结果:
140718916818880 140718916818880 140718916818944 140718916818880
说明:在 Python 语言中,可以使用内置的函数 id() 来获取变量所指向的内存地址。
a 与 b 虽然是不同的变量,但是他们的值都是相同的,所以它们在内存中的地址也是相同的,而当改变变量 a 的值的时候,并不是直接改变变量 a 的值,而是改变了变量 a 所指向的内存地址。
在 Python 语言中,数值类型主要包括整数、浮点数和复数。
整数整数就是整数数值,是没有小数部分的数值,例如:0、3、10、-1 等等。整数包括正整数、负数和0。Python 中的整数会自动转换高精度计算,所以 Python 中的整数类型的位数是任意的。
例如:
a = 123456 print(a) b = 0 print(b) c = -1 print(c) d = 25465486413516513542315452153423134654134531 print(d)
运行结果:
123456 0 -1 25465486413516513542315452153423134654134531
值得一提的是,Python 中的整数类型,如果是十进制整数,除了0之外,其他数值不能以0作为开头。
例如:
e = 000000000 print(e)
运行结果:
0
例如:
f = 000023 print(f)
运行结果:报错
Python 中的整数除了十进制类型外,还有八进制、十六进制、二进制等等,在这里不过多讲解。
浮点数浮点数主要由整数部分和小数部分组成,主要用于处理包括小数的数值。例如:3.1415926、-152.01、0.0001 等。
在使用浮点数计算的时候,可能会出现小数位数不确定的情况。
例如:
a = 0.1 + 0.1 print(a) b = 0.1 + 0.2 print(b)
运行结果:
0.2 0.30000000000000004
这是因为浮点数值在内存中保存方法导致的,基本上所有的计算机语言都存在这个问题,我们这里直接忽略多余的小数位即可。
复数Python 中的复数与数学中的复数的表现形式完全一致,都是有实数和虚数构成,并且使用 j 或 J 表示虚部。
例如:
a = 6.54 + 32.01j print(a)
运行结果:
(6.54+32.01j)字符串类型
字符串就是连续的字符组成的,通常使用 单引号''、双引号""、三引号''''''或者 """"""包裹起来。
这三种类在 Python 中,字符串和整数一样,也属于不可变序列。
例如:
a = "字符串类型" b = "字符串类型" print(id(a)) print(id(b)) a = "字符串类型2" print(id(a)) print(id(b))
运行结果:
1357027606320 1357027606320 1357027224800 1357027606320
在 Python 中,单引号和双引号的字符串都只能在同一行,而三引号的字符串可以多行书写。
例如:
a = '单引号字符串'
b = "双引号字符串"
c = '''三引号字符串
可以多行展示
|————————|
| |
|--------|
结束'''
print(a)
print(b)
print(c)
运行结果:
单引号字符串
双引号字符串
三引号字符串
可以多行展示
|————————|
| |
|--------|
结束
在 Python 中,存在转义字符,所谓转义字符,是指使用反斜杠 对一些特殊字符进行转义。
例如:
# n 换行符 a = "Pythonn字符串a" print(a) # 空 b = "Python 字符串b" print(b) # t 水平制表符 c = "Pythont字符串c" print(c) # " 双引号 d = "Python"字符串d" print(d) # ' 单引号 e = 'Python'字符串e' print(e) # \ 反斜杠 f = "Python\字符串f" print(f) # f 换页 j = "Pythonf字符串j" print(j)
运行结果:
Python 字符串a Python 字符串b Python 字符串c Python"字符串d Python'字符串e Python字符串f Python字符串j
除了这些转义字符外,还有其他一些不常用的转义字符,在这里不过多讲述。
值得一提的是,在 Python 中,在字符串定界符引前加上字母r(或者R),即可原样输出字符串。
例如:
a = r"Pythonn字符串a" print(a)
运行结果:
Pythonn字符串a布尔类型
布尔类型主要表示为真值或者假值,在 Python 中,Treu 和 False 都解释为布尔类型。
Python 中的布尔类型可以解释为数值类型进行计算,True 解释为 1,False 解释为 0。
例如:
a = True + 1 b = False + 1 print(a) print(b)
运行结果:
2 1
在 Python 中,所有的对象都可以真值测试,其中,以下几种情况可以被判定为 False,其他情况则为 True。
- False 或 None。
- 数值中的0,包括0、0.0、虚数0。
- 空序列,包括空字符串、空元组、空列表、空字典。
- 自定义的对象,该对象的__bool__ 方法返回 False,或者 __len__ 方法返回0。
在 Python 中,可以使用 Python 的内置函数,将一些类型的数据转换为另外一种类型。
例如:
a = 1 print(type(a)) print(type(str(a))) b = "100" print(type(b)) print(type(int(b)))
运行结果:
常用的类型转换函数有:
| 函数 | 作用 |
|---|---|
| int(x) | 将x转换为整数类型 |
| float(x) | 将x转换为浮点数类型 |
| complex(real [,imag]) | 创建一个复数 |
| str(x) | 将x转换为字符串类型 |
| repr(x) | 将x转换为表达式字符串 |
| eval(x) | 计算在字符串中的有效 Python 表达式,并返回一个对象 |
| chr(x) | 将整数x转换为一个字符 |



