详解Python3 对象组合zip()和回退方式*zip
2019-05-15 18:02
846 查看
zip即将多个可迭代对象组合为一个可迭代的对象,每次组合时都取出对应顺序的对象元素组合为元组,直到最少的对象中元素全部被组合,剩余的其他对象中未被组合的元素将被舍弃。
keys = ['one', 'two', 'three'] values = [1, 2, 3] d = zip(keys, values) print(list(d))
示例结果:
[('one', 1), ('two', 2), ('three', 3)]
可以看到我们由 zip 模拟了一个类似字典的一一对应的元组迭代对象,并将其转化为 list 类型查看,当然我们可以利用获取迭代对象生成真正的键值字典:
keys = ['one', 'two', 'three'] values = [1, 2, 3] d = zip(keys, values) D = {} for key, value in d: print(key, value) D[key] = value print(D)
示例结果:
one 1
two 2
three 3
{'one': 1, 'two': 2, 'three': 3}
我们可以利用for循环迭代赋值给字典完成对应的键值映射,在Python3中我们还可以用一句话就可以完成 D = dict(zip(keys,values)) .
*zip
当我们想回退为迭代器组合之前的状态时,我们可以利用 * “解压”现在“压缩”过的新的迭代对象
keys = ['one', 'two', 'three', 'four'] values = [1, 2, 3] d = zip(keys, values) older = zip(*d) print(list(older))
“解压”结果:
[('one', 'two', 'three'), (1, 2, 3)]
PS:Python3:zip()和*zip()函数
描述
- zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组
- *zip() 和zip()配合使用,具体看下面示例
Showing code by screenshot ~~
1. zip()
2. *zip()
总结
以上所述是小编给大家介绍的Python3 对象组合zip()和回退方式*zip,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
您可能感兴趣的文章:
相关文章推荐
- 判断python对象是否可调用的三种方式及其区别详解
- Python之面向对象的组合、多态、菱形问题、子类中重用父类的两种方式
- Python面向对象私有属性及案例详解
- Serializable与Parcelable传递对象详解(activity间传递对象方式)
- Python selenium 三种等待方式详解(必会)
- 详解Python中的__getitem__方法与slice对象的切片操作
- 详解Python中open()函数指定文件打开方式的用法
- Python ZipFile模块详解(转)
- AIDL详解(AIDL、Messenger两种方式实现跨进程通信,传递自定义对象)
- python面向对象详解(转)
- Python中的zipfile模块使用详解
- 第五种方式,python使用组合来添加类方法和属性(二),以selenium的webdriver为例
- Python3.X基础语法(数据类型/对象引用/组合数据类型/逻辑操作符/控制流语句/算数操作符/输入输出/函数创建和引用)001
- 详解python中字典的循环遍历的两种方式
- Python selenium---父子,兄弟 ,相领节点定位方式详解
- Python 对象 --组合,绑定
- Python中类的定义、继承及使用对象实例详解
- 详解 Python 源码之对象机制
- 详解Python中的__getitem__方法与slice对象的切片操作
- Java中对象的序列化方式克隆详解