From 94293cc6f71e1d597b4beca6b5896f1c111550b6 Mon Sep 17 00:00:00 2001 From: zhanganduo Date: Wed, 18 Oct 2023 16:56:48 +0800 Subject: [PATCH] Site updated: 2023-10-18 16:56:47 --- .../index.html" | 59 ++++++++++++++++++- atom.xml | 13 +++- baidusitemap.xml | 4 +- content.json | 2 +- sitemap.txt | 2 +- sitemap.xml | 4 +- 6 files changed, 73 insertions(+), 11 deletions(-) diff --git "a/2023/10/18/Python\345\205\203\347\273\204\351\233\206\345\220\210\345\255\227\345\205\270/index.html" "b/2023/10/18/Python\345\205\203\347\273\204\351\233\206\345\220\210\345\255\227\345\205\270/index.html" index c5ff314..ae61421 100644 --- "a/2023/10/18/Python\345\205\203\347\273\204\351\233\206\345\220\210\345\255\227\345\205\270/index.html" +++ "b/2023/10/18/Python\345\205\203\347\273\204\351\233\206\345\220\210\345\255\227\345\205\270/index.html" @@ -18,13 +18,15 @@ Python元组集合字典 | ANdRoid's BLOG - + + + - + @@ -356,7 +358,58 @@

- + +
+

1. 元组

元组跟 列表 类似,只是不支持动态添加、删除元素,以及不能修改元素。

+

1.1 元组的初始化

元组需要用小括号括起来,中间的元素用逗号隔开。

+

注意:如果初始化只包含一个元素的元组,需要在该元素后添加逗号。

+
1
2
3
4
5
6
7
a = ()  # 初始化一个空元组
b = (1, 2) # 含有2个整数的元组
c = 6, "Python", 3.14 # 小括号可以省略,等价于(6, "Python", 3.14)
d = (5,) # 注意不能写成(5),(5)表示整数5
e = 5, # 等价于(5,)

print(a, b, c, d, e)
+ +

1.2 元组的解包

1
2
3
t = 12345, 54321, "Hello!"  # 初始化一个元组
x, y, z = t # 将元组解包,将元组内的三个值按顺序赋值给x、y、z
print(x, y, z)
+ +

所以,判断语句中的交换操作,本质上是元组的解包:

+
1
2
a, b = 3, 4  # 将元组(3, 4)解包,分别赋值给a、b
a, b = b, a # 将元组(b, a)解包,分别赋值给a、b
+ +

同样地,函数中函数返回多个值,本质上也是返回了一个元组:

+
1
2
3
4
5
6
7
def calc(x, y):
return x + y, x * y # 等价于 return (x + y, x * y)


x, y = 3, 4
s, p = calc(x, y) # 将(x + y, x * y)解包,分别赋值给s、p
print(s, p)
+ +

1.3 元组的其他操作

元组的下标访问元素、循环遍历、切片、加法和乘法运算等操作,都与列表相同。

+

2. 集合

集合是Python中最常用的数据结构之一,用来存储不同元素。
注意,集合中的元素是无序的。

+

2.1 集合的初始化

创建集合用花括号或set()函数。注意:创建空集合只能用set(),不能用{},因为{}创建的是空字典,会在下一小节里介绍字典。

+

集合常见的初始化方式:

+
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}  # 会自动去除重复元素
print(basket) # 重复的元素已经去除了

s = set() # 初始化一个空列表
print(s)

a = [1, 2, 1, 3, 1]
b = set(a) # 将列表转化成集合,一般是为了去重。
c = list(b) # 将集合转化回列表
print(b, c)

x = "abracadabra"
a = set(x) # 将字符串中的每个字符存到集合中
b = str(a) # 注意,这里并不能将集合转化回原字符串,而是用格式化表示集合中的内容
print(a, b)
+ +

2.2 集合的常用操作

假设a表示一个集合。

+
1
2
3
4
5
len(a) 返回集合中包含的元素数量。
a.add(x) 在集合中添加一个元素。
a.remove(x) 删除集合中的x,如果x不存在,则报异常。
a.discard(x) 删除集合中的x,如果x不存在,则不进行任何操作。
x in a 判断x是否在a中。
+ +

例如:

+
1
2
3
4
5
6
7
8
9
10
11
12
13
14
a = {1, 2, 3}

print(len(a)) # 输出3

a.add(4)
print(a) # 输出 {1, 2, 3, 4},注意集合中的元素是无序的。

a.remove(2)
print(a) # 输出 {1, 3, 4}

a.remove(5) # 因为5不存在,所以会报异常

a.discard(5) # 因为5不存在,所以不进行任何操作
print(a) # {1, 3, 4}
+ +

2.3 使用for循环遍历集合

类似于列表,集合也可以用for ... in ...的形式遍历。例如:

+
1
2
3
4
a = {1, 2, 3}

for x in a: # 循环遍历整个集合
print(x, end=' ')
+ +

3. 字典

字典是Python中最常用的数据结构之一,用来存储映射关系。
注意,字典中的元素是无序的。

+

不同于列表,字典是以key进行索引的,可以将每个key映射到某个valuekey可以是任何不可变类型,常用可以作为key的类型有数字和字符串。列表因为是可变的,所以不能作为keyvalue可以是任意类型。

+

3.1 字典的初始化

3.2 字典的常用操作

3.3 使用for循环遍历字典