python中zip函数和unzip函数的使用

在统计中常常有这样的情况,假设一个班级中,有三门学科,语文,英语,数学,为了方便这里假设班级只有十个学生,按照序号的顺序,存放各门学科的成绩数据。

如:

yuwen = [98,87,68,67,85,34,81,90,54,91]
yingyu = [68,78,56,78,56,29,68,68,68,87]
shuxue = [87,34,36,79,34,56,78,86,65,86]

按照次序来,如数组的第一位表示学号为1学生的成绩,依次类推。现在如何方便的给出每个学生的三门成绩呢?

python 中的 zip 函数就能用在这里。

>>> yuwen = [98,87,68,67,85,34,81,90,54,91]
>>> yingyu = [68,78,56,78,56,29,68,68,68,87]
>>> shuxue = [87,34,36,79,34,56,78,86,65,86]
>>> chengji = zip(yuwen,yingyu,shuxue)
>>> chengji[0]
(98, 68, 87)
>>>

这里就能清楚的知道了zip 函数的使用了,zip 可以接受任何个数的参数,相当于把各个数组进行打包操作。

那有zip 操作,反过来应该有对应的unzip, 在python中,并没有使用 unzip 这个函数,而是使用相同的zip ,但是参数有所不同:

>>> zip(*chengji)
[(98, 87, 68, 67, 85, 34, 81, 90, 54, 91), (68, 78, 56, 78, 56, 29, 68, 68, 68, 87), (87, 34, 36, 79, 34, 56, 78, 86, 65, 86)]
>>>

就能方便的把之前的压缩包给解开了。

转载请标明来之:http://www.bugingcode.com/

更多教程:阿猫学编程


来自您的鼓励

如果您感觉这一系列的教程,读后有点收获,并对知识有点了解,不妨小额捐助我一下,让我有动力继续写出更多好文章;或者在评论区留下你的意见。