打开网易新闻 查看精彩图片

题目:

zip函数的灵活运用,如果我们有两个列表,

第一个列表都是姓名,

第二个列表都是这些姓名对应的资产,

如何快速将这两个列表组合到一起。

输入输出效果:

[('张三', 18), ('李四', 2), ('王五', 99), ('老刘', 21)]

[('张三', '李四', '王五', '老刘'), (18, 2, 99, 21)]

[('张三', '李四', '王五', '老刘'), (18, 2, 99, 21)]

习题思路分析:

  1. 本地主要针对两个重要考点进行应用,一个是zip函数的应用,一个是copy模块的deepcopy函数进行深度拷贝。

  2. 由于zip压缩后的变量只能使用一次的特点,所以,在本题进行了深度复制,复制后的值保存在ziped2变量中。

  3. 使用*星号可以对变量标记为解压,结合zip函数就可以将变量解压到两个元组内。

本节源代码

# -*- coding: utf-8 -*-"""@File文件 : ljytest78@Time创建时间 : 2021/11/30@Author作者 : 刘金玉@Contact联系方式 : selidev@qq.com 编程创造城市 http://bcczcs.com注:作者信息请保留!否则必究法律责任!刘金玉编程,编程创造城市!作者微信号:selidev作者抖音号:selidev作者B站:刘金玉编程微信公众号:编程创造城市题目:zip函数的灵活运用,如果我们有两个列表,第一个列表都是姓名,第二个列表都是这些姓名对应的资产,如何快速将这两个列表组合到一起。"""import copylist1=["张三","李四","王五","老刘"]list2=[18,2,99,21,100]ziped=zip(list1,list2)ziped2=copy.deepcopy(ziped)list3=list(ziped)print(list3)#对复制的ziped数据进行解压print(list(zip(*ziped2)))
list4=[('张三', 18), ('李四', 2), ('王五', 99), ('老刘', 21)]print(list(zip(*list4)))

总结:通过本节知识及代码,我们需要重点学习的是zip函数的使用和深度复制的知识。这里我们要区分平时使用的copy函数和deepcopy函数的区别。对变量进行完全复制的是deepcopy函数 ,而普通的copy函数只是浅层复制,copy复制的变量的深层地址还是相同的。

更多Python基础操作知识,大家可以到B站/优酷/爱奇艺/好看视频/腾讯视频搜索“刘金玉”,可以找到《零基础Python教程》和《Python高级进阶教程》视频合集哦!全部免费亲情奉献!

联系作者:刘金玉

长按关注公众号

编程创造城市官网:https://bcczcs.com/