元组的序列解包

x,y,z = (1,2,3)
print(x,y,z)
1 2 3
a_tuple = 4,5,6 #(4,5,6)
(x,y,z) = a_tuple
print(x,y,z)
4 5 6

range对象的序列解包

x,y,z,m,n = range(5)
print(x,y,z,m,n)
0 1 2 3 4

迭代对象的序列解包

x,y,z,m,n = map(str, range(5))
x,y,z,m,n
('0', '1', '2', '3', '4')

列表的序列解包

x_list = [1,2,3,4,5,6,7]
x0,x1,x2,x3,x4,x5,x6 = x_list
x5
6
x,y,z = sorted([7,32,5])
print(x,y,z)
5 7 32

字典的序列解包

dict1 = {'a':1,'b':2,'c':3}
b,c,d = dict1.items()
print(b,c,d)
('a', 1) ('b', 2) ('c', 3)
b,c,d = dict1
b,c,d
('a', 'b', 'c')
b,c,d = dict1.values()
b,c,d
(1, 2, 3)

序列解包与遍历

keys = ['x1','x2','x3','x4']
values = [1,2,3,4]
for k,v in zip(keys, values):
print(k,v)
x1 1
x2 2
x3 3
x4 4
x = ['a','b','c']
for index, x_value in enumerate(x):
print('索引{0}和x的元素{1}'.format(index,x_value))
索引0和x的元素a
索引1和x的元素b
索引2和x的元素c
dict2 = {'a':1,'b':2,'c':3}
for k,v in dict2.items():
print(k,v)
a 1
b 2
c 3

序列解包的其它用法

print(*[1,2,3,4],5,*(6,7))
1 2 3 4 5 6 7
*range(4),4
(0, 1, 2, 3, 4)
{*range(3),3,4,*(5,6,7)}
{0, 1, 2, 3, 4, 5, 6, 7}
{'x':1,**{'y':2}}
{'x': 1, 'y': 2}

Python序列解包的更多相关文章

  1. python 序列解包(解压缩)

    序列解包(解压缩) 所学的解压缩 如果我们给出一个列表,我们需要一次性取出多个值,我们是不是可以用下面的方式实现呢? name_list = ['nick', 'egon', 'jason'] x = ...

  2. python 零散记录(五) import的几种方式 序列解包 条件和循环 强调getattr内建函数

    用import关键字导入模块的几种方式: #python是自解释的,不必多说,代码本身就是人可读的 import xxx from xxx import xxx from xxx import xx1 ...

  3. Python中的可变、不可变对象和赋值技巧序列解包

    可变对象和不可变对象 在python中一切皆对象.在Python中不存在所谓的值传递调用,一切传递都是对象的引用,也可认为是传址. python中,对象分为可变(mutable)和不可变(immuta ...

  4. Python——序列封包与序列解包

    一.序列封包与序列解包 把多个值赋给一个变量时,Python会自动的把多个值封装成元组,称为序列封包. 把一个序列(列表.元组.字符串等)直接赋给多个变量,此时会把序列中的各个元素依次赋值给每个变量, ...

  5. Python特色的序列解包、链式赋值、链式比较

    一.序列解包 序列解包(或可迭代对象解包):解包就是从序列中取出其中的元素的过程,将一个序列(或任何可迭代对象)解包,并将得到的值存储到一系列变量中. 一般情况下要解包的序列包含的元素个数必须与你在等 ...

  6. 第4.7节 Python特色的序列解包、链式赋值、链式比较

    一.序列解包 序列解包(或可迭代对象解包):解包就是从序列中取出其中的元素的过程,将一个序列(或任何可迭代对象)解包,并将得到的值存储到一系列变量中. 一般情况下要解包的序列包含的元素个数必须与你在等 ...

  7. Python中序列解包与函数的参数收集之间的关系

    在<第4.7节 Python特色的序列解包.链式赋值.链式比较>中老猿介绍了序列解包,<第5.2节 Python中带星号的函数参数实现参数收集>介绍了函数的参数收集,实际上函数 ...

  8. 在python中元组与列表的区别及序列解包

    一. 元组与列表的区别 元组中的数据一旦定义就不允许更改. 元组没有append().extend()和insert()等方法,无法向元组中添加元素. 元组没有remove()或pop()方法,也无法 ...

  9. Python3 序列解包

    转载自:https://blog.csdn.net/yilovexing/article/details/80576788 序列解包是 Python 3.0 之后才有的语法 什么是序列解包呢?先看一个 ...

随机推荐

  1. Linux设备驱动之Ioctl控制【转】

    转自:http://www.cnblogs.com/geneil/archive/2011/12/04/2275372.html 大部分驱动除了需要具备读写设备的能力之外,还需要具备对硬件控制的能力. ...

  2. 『转载』hadoop 1.X到2.X的变化

    表1新旧hadoop脚本/变量/位置变化表 改变项 原框架中 新框架中(Yarn) 备注 配置文件位置 ${hadoop_home_dir}/conf ${hadoop_home_dir}/etc/h ...

  3. JSON和JSONP详解

    什么是JSON JSON是一种基于文本的数据交换方式,或者叫做数据描述格式,你是否该选用他首先肯定要关注它所拥有的优点. JSON的优点: 1.基于纯文本,跨平台传递极其简单: 2.Javascrip ...

  4. zabbix3.0.4通过自定义shell脚本添加对关键日志文件的监控

    zabbix添加对自定义无规则日志文件的监控 项目背景及思路: zabbix自带有针对日志文件的监控,自带的监控只能监控到指定文件或者正则匹配的固定日志文件,但当需要监控的文件名没有规律的时候自带监控 ...

  5. MariaDB:删除数据库报错:error: 'Error dropping database (can't rmdir './shiro', errno: 39)'

    今天在删除一个库的时候报错,如下图所示. 删除命名:mysqladmin –u root –p  drop shiro 解决办法: 删除./shiro目录下面的所有文件和目录. 重新执行删除命令即可!

  6. Android判断网络是否打开,并打开设置网络界面

    由于Android的SDK版本不同所以里面的API和设置方式也是有少量变化的,尤其是在Android 3.0 及后面的版本,UI和显示方式也发生了变化,现在就以打开网络设置为例,同大家分享一下: 1. ...

  7. Android数据存储:File

    Android数据存储之File Files:它通过FileInputStream和FileOuputStream对文件进行操作.但是在Android中,文件是一个应用程序私有的,一个应用程序无法读写 ...

  8. annoy ANN算法 调参

    search_k serach_k越大,越准确,但是要在时间和准确率之间取个trade off During the query it will inspect up to search_k node ...

  9. LeetCode(34):搜索范围

    Medium! 题目描述: 给定一个按照升序排列的整数数组 nums,和一个目标值 target.找出给定目标值在数组中的开始位置和结束位置. 你的算法时间复杂度必须是 O(log n) 级别. 如果 ...

  10. jdk提供的数组扩容方法:System.arraycopy

    package chapter7; /* * jdk提供的扩容方法 * System.arraycopy */public class TestArrayjdk { public static voi ...