学习目标
基本内容
一.基本数据类型
- 数据类型不仅决定了对象在内存中的存储方式,而且决定了可以在对象上附加的操作。基于不同的数据类型,程序可以实现复杂的功能。
- Python语言中,所有对象都有一个数据类型,Python数据类型定义为一个值的集合以及定义在这个值上的一组运算操作。一个对象上可执行且只允许执行其对应数据类型定义的操作。
- Python中有六个标准的数据类型:
- number(数字)
- string(字符串)
- list(列表)
- tuple(元组)
- dictionary(字典)
- set(集合)
- 其中,不可变数据类型有:Number、String、Tuple;可变数据类型有:List、Dictionary、Set。
- Python3支持的数字类型有int(整数)、float(浮点数)、bool(布尔型)、complex(复数)四种类型。
- 数字(包括布尔型)、字符串和空类型称为原子(标量)类型,它每次只能存储单个对象类型。
- 列表、元组、字典和集合是Python中的内置容器类型,容器是用来存放基本对象或者其它容器对象的一种类型,它可以容纳多个对象类型。不同容器类型之间的最主要区别是单个元素的访问方式以及运算符定义方式的不同。
- Python提供了对多种数据类型的强大支持,其中数字、字符串、列表、元组、字典、集合等称为标准数据类型,其它的类型称为内建类型。
对象类型 |
名称 |
实例 |
对象类型 |
名称 |
实例 |
数字 |
int、float、complex |
123,3.1415,$3+4j$ |
集合 |
set |
|
字符串 |
str |
"hello",'12','''语言''' |
元组 |
tuple |
(1, 2, 3) |
字节串 |
bytes |
b'\xd6\xd0\xb9\xfa' |
文件 |
|
fn = open("name.txt", 'r') |
列表 |
list |
[1, 2, 3],['a', 'b', ['c', 'd']] |
布尔型 |
bool |
True、False |
字典 |
dict |
|
空类型 |
NoneType |
None |
- Python支持四种基本数字类型,分别是整型、布尔型、浮点型、复数型,其中前两种是整型类型。
- Python中的数字是无符号的,所有的数字不包括符号“-”,符号“-”被看做一元运算符“-”。
- 浮点数由于表示方式的限制,在进行运算时很少返回精确的预期结果。
- 数字属于Python的不可变对象,修改整型变量值的时候并不是真正修改变量的值,而是修改变量使其指向新值所在的内存地址。
- 为了增强数字的可读性,可以在数字中间位置使用单个下划线作为分隔。
- 在Python中,数字类型变量所表示的范围可以是无穷大,只要内存空间足够。和其它语言一样,Python也可以对数据类型进行等价转换。
- Python包括4种内置的数字数据类型。
- (1)int整型。用于表示整数,如:12,1024,10。
- (2)float浮点型。用于表示实数,如:3.14,1.2,$2.5e2$($= 2.5 \times 10^2 = 250$)。
- (3)bool布尔型。bool布尔型对应两个布尔值:True和False,分别对应1和0。
- (4)complex复数型。其表示有两种:一种是$a+bj$,另一种是complex(a, b),例如$3+4j$可表示成complex(3, 4)。
二.基本数字数据类型——整型数据
- 整型数据即整数,不带小数点,可以有正号或者负号。
- 在Python3.x中,整型数据在计算机内的表示没有长度限制,其值可以任意大。
- 为了增强数字的可读性,可以在数字中间位置使用单个下划线作为分隔。
b = 8888_888_888_888_888_888
c = b ** 5
print(b)
print(c)
8888888888888888888
55492895730664363466978272282341783947699029619468576944016528645701027959857718166268692103168
- 十进制整数:由0到9的数字组成。
- 二进制整数:以0b或0B为前缀,由0和1组成。比如0b10,表示二进制的10,即10进制的2。
- 八进制整数:以0o或00为前缀,其后由0到7的数字组成。比如0o10,表示八进制的10,即十进制的8。
- 十六进制整数:以0x或0X开头,其后由0到9的数字和a至f字母或A至F字母组成。比如0x10,表示十六进制的10,即十进制的16。
- Python中常用的内置进制转换函数:
- int(二进制整数型字符串,2),二进制转换成十进制
- int(八进制整数型字符串,8),八进制转换成十进制
- int(十六进制整数型字符串,16),十六进制转换成十进制
- bin(整数),将整数转换为对应的二进制字符串
- oct(整数),将整数转换为对应的八进制字符串
int('11', 2)
3
int('71', 8)
57
int('0f', 16)
15
bin(5)
'0b101'
oct(9)
'0o11'
三.基本数字数据类型——浮点型数据
实数又称浮点数,一般有两种表示形式:
- 十进制小数形式:由数字和小数点组成(必须有小数点)。
- 指数形式:用科学计数法表示的浮点数,用字母e(或E)表示以10为底的指数,e之前为数字部分,之后为指数部分。
- 注意:e(或E)前面必须有数字,后面必须是整数。
- 例如:以下例子均为错误写法:$e-5$,$1.2E-3.5$,$1e$
- 浮点数由于表示方式的限制,在进行运算时很少返回精确的预期结果。
x, y = 0.4, 0.3
print(x - y)
0.10000000000000003
四.基本数字数据类型——布尔型数据
- Python的布尔类型有两个值:True和False,分别表示逻辑真和逻辑假。分别对应了数字的1和0,因此布尔型是整数类型的子类型。
type(True)
bool
True == 1
True
False == 0
True
- 布尔类型还可以与其它数据类型进行逻辑运算, Python规定:0、空字符串、None和False,其它数值和非空字符串为True。
0 and True
0
None or True
True
五.基本数字数据类型——复数
- 复数由实数部分和虚数部分构成,可以用$a+bj$或者complex(a, b)表示,复数的实部a和虚部b都是浮点型。
- 复数对象有两个属性real和imag用于查看实部和虚部。
x = 1 + 2j
print(x, x.real, x.imag)
(1+2j) 1.0 2.0
x = complex(3, 4)
print(x, x.real, x.imag)
(3+4j) 3.0 4.0
六.基本数值类型
数值类型实例
int |
float |
complex |
10 |
0.0 |
3.14j |
100 |
15.20 |
45.j |
-786 |
-21.9 |
9.322e-36j |
0o10 |
32.3e2 |
.876j |
-0o10 |
-90. |
-.6545+0j |
-0x260 |
-32.54e100 |
3e+26j |
0x69 |
70.2e12 |
4.53-7j |
· Blazor Hybrid适配到HarmonyOS系统
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· 解决跨域问题的这6种方案,真香!
· 一套基于 Material Design 规范实现的 Blazor 和 Razor 通用组件库
· 分享4款.NET开源、免费、实用的商城系统