目录
✨✔️🌱🌳🔋 💡📗📘📙
1️⃣序列
什么是序列?
2️⃣序列封包
什么是序列封包?
实例如下:
>>>a = 'a','b', 'c'
>>>a
('a', 'b', 'c')
>>>type(a)
<class 'tuple'>
3️⃣序列解包
什么是序列解包?
4️⃣序列解包的好处
- 简化代码
- 使程序更加简洁
- 可读性高
- 提高效率
- 方便程序员的开发
备注:
如果对可迭代对象不够理解,可以看看下面文章:
- 【python知识点】你知道Iterable对象吗?什么是迭代器?
- 【python小知识】:什么是生成器
5️⃣序列解包的详解
🟥方式一
>>>a,b,c = 1,2,3
>>>a
1
>>>b
2
>>>c
3
- 需要注意的是,变量和值的个数必须对应起来,不然就会抛出
ValueError
异常。
🟨方式二
>>>a, b = 20, 56
>>>print(a,b)
20 56
>>>b, a = a, b
>>>print(a,b)
56 20
🟩方式三
>>>name = ['张三', '李四', '王五']
>>>score = [95,86,92]
>>>for n, s in zip(name,score):
print(n,s)
...
张三 95
李四 86
王五 92
🟦方式四
>>>m
[1, 2, 3, 4, 5]
>>>m[1 : 4] = 20, 30, 40
>>>m
[1, 20, 30, 40, 5]
🟪方式五
例子1:
>>>n = ['a', 'b', 'c']
>>>a,b,c = n
>>>a
'a'
>>>b
'b'
>>>c
'c'
例子2:
>>>a,b,c = range(1,4)
>>>print(a,b,c)
1 2 3
例子3:
>>>m = enumerate(['one', 'two', 'three'])
>>>a,b,c = m
>>>print(a,b,c)
(0, 'one') (1, 'two') (2, 'three')
例子4:
>>>m = zip(['one','two', 'three'], [1,2,3])
>>>a,b,c = m
>>>print(a,b,c)
('one', 1) ('two', 2) ('three', 3)
6️⃣序列解包中的特殊符号
例子1:
>>>a,b,*c = 1,2,1,2
>>>a
1
>>>b
2
>>>c
[1, 2]
例子2:
>>>a,*b, c = 1,1,2,2
>>>a
1
>>>b
[1, 2]
>>>c
2
例子3:
>>>*a,b,c = 1,2,1,2
>>>a
[1, 2]
>>>b
1
>>>c
2
例子4:
>>>a,b,*c = 1,2
>>>a
1
>>>b
2
>>>c
[]
例子5:
>>>a,*b, c = 1,2
>>>a
1
>>>b
[]
>>>c
2
例子6:
>>>*a,b,c = 1,2
>>>a
[]
>>>b
1
>>>c
2
好了,关于序列解包的小知识就看到这。
希望文章可以对你有所帮助!