Python序列解包
一、什么是序列解包?
它是Python3.0提供的语法糖,有助于简化代码、更好的理解代码。如下例子:
>>> x,y,z = (1, 2, 3)
>>> x
1
>>> y
2
>>> z
3
>>>
二、序列解包的简单用法
1. 用于列表、元组
# 列表
>>> a, b, c = [12, 34, 56]
>>> a
12
>>> b
34
>>> c
56
>>> # 元组
>>> x,y,z = (1, 2, 3)
>>> x
1
>>> y
2
>>> z
3
2. 用于字典
- 序列解包用于字典,默认对‘键’进行解包
>>> dicts = {'a': 'x', 'b': 1, 'c': 3}
>>> q, w, e = dicts
>>> q
'a'
>>> w
'b'
>>> e
'c'
>>>
- 序列解包用于键值对,需要使用字典的items()接口
>>> r, t, y = dicts.items()
>>> r
('a', 'x')
>>> t
('b', 1)
>>> y
('c', 3)
>>>
- 序列解包用于值,需要使用字典的values()接口
>>> i, o, p = dicts.values()
>>> i
'x'
>>> o
1
>>> p
3
>>>
3. 用于遍历多个序列
>>> list1 = [1, 2, 3]
>>> list2 = [4, 5, 6]
>>> for m, n in zip(list1, list2):print(m, n)1 4
2 5
3 6
>>>
Python序列解包相关推荐
- 详解Python序列解包(5)
如果一个函数需要以多种形式来接收参数,定义时一般把位置参数放在最前面,然后是默认值参数,接下来是一个星号的可变长度参数,最后是两个星号的可变长度参数:调用函数时,一般也按照这个顺序进行参数传递.调用函 ...
- 详解Python序列解包(4)
本文主要介绍调用函数传递参数时序列解包的用法.在定义函数时在形参前面加2个星号**表示可变长度参数,可以收集若干关键参数形式的参数传递并存放到一个字典之中.与之相对,如果实参是个字典,可以使用两个星号 ...
- 详解Python序列解包(3)
本文主要介绍调用函数传递参数时序列解包的用法.在调用函数传递参数时,可以在实参序列前加一个星号*进行序列解包,或在实参字典前加两个星号**进行解包,本文介绍第一种用法,第二种用法后面再单独发文介绍. ...
- python序列解包_python中解包
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 序列解包(sequence unpacking)是python中非常重要和常用的 ...
- python 链式比较 2._特色的Python序列解包、链式赋值、链式比较
一.序列解包 序列解包(或可迭代对象解包):解包就是从序列中取出其中的元素的过程,将一个序列(或任何可迭代对象)解包,并将得到的值存储到一系列变量中. 一般情况下要解包的序列包含的元素个数必须与你在等 ...
- python 序列解包(解压缩)
所学的解压缩 如果我们给出一个列表,我们需要一次性取出多个值,我们是不是可以用下面的方式实现呢? name_list = ['nick', 'egon', 'jason'] x = name_list ...
- python序列解包求水仙花数_790.琉璃菜的糖浆欠火或过火,都会影响成品的( )。
[填空题]kidney [填空题]管,隧道 [其它]1.随机产生20个1-100的整数, 并创建列表,用切片提取偶数位置的元素 2.随机产生5个元素( 0,1,2,3,4),然后对1,3元素进行4次方 ...
- python *args和**kwargs以及序列解包
DAY 8. *args和**kwargs *args:多值元组,**kwargs多值字典,他们是python函数传参时两个特殊的参数,args和kwargs并不是强制的,但习惯使用这两个,如果在函数 ...
- 详解Python中的序列解包(2)
8个月前曾经发过一篇关于序列解包的文章,见详解Python序列解包,本文再稍作补充. 可以说,序列解包的本质就是把一个序列或可迭代对象中的元素同时赋值给多个变量,如果等号右侧含有表达式,会把所有表达式 ...
最新文章
- EP936E的IIC
- ASP调用存储过程返回了一个参数和一个记录集时出现ADODB.Recordset 错误 '800a0e78'...
- PTA数据结构与算法题目集(中文)7-29
- 2017年重要数据安全事件解读
- IntelliJ IDEA 快捷键快速实用篇
- 业界 | 复杂出行场景下,滴滴如何将AI融入地图系统
- Java SpringMVC框架学习(二)httpServeltRequest和Model传值的区别
- linux vi de ce,linux下vi命令Vi命令集
- 数学--数论--HDU6919 Senior PanⅡ【2017多校第九场】
- 【C++】int与string转换
- 2014年3月计算机四级网络工程师考试试题及答案,某年3月计算机等级考试四级网络工程师笔试试题...
- jsonp 使用选择器
- xdebug常用配置
- 画流程图的codeproject上有人用wpf实现了一个框架
- linux可执行文件在window,教你如何在windows下编译linux生成windows的可执行程序
- Rabbitmq消息发布确认机制
- centos7 mysql dump还原_CentOS 7.6使用mysqldump备份恢复MariaDB
- 【论文翻译】Self-Guided and Cross-Guided Learning for Few-Shot Segmentation
- 弧齿锥齿轮零件图_弧齿锥齿轮画法类别
- css filter:inver属性灵活使用