python zip()与zip(*ziped)以及list(zip(a,b))

Posted 落月_YU

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python zip()与zip(*ziped)以及list(zip(a,b))相关的知识,希望对你有一定的参考价值。


#环境python3.7
>>> a = [0,0,1,2,4,5,6,7,5] >>> b = [0,0,1,2,4,5,6,7,5] >>> zip(a,b) <zip object at 0x08C049E0> #我们会发现:zip(a,b)返回一个 object,试着解压缩吧 >>> c = zip(*zip(a,b)) >>> c <zip object at 0x08C04A58> #啊?解压缩也是个object,只是后面的地址不一样了!真的解压出来了吗?让我试试 >>> (g,h) = zip(a,b) Traceback (most recent call last): File "<pyshell#19>", line 1, in <module> (g,h) = zip(a,b) ValueError: too many values to unpack (expected 2) #压缩之后是看不了的!那么解压缩后呢? >>> (e,f) = c >>> (e,f) ((0, 0, 1, 2, 4, 5, 6, 7, 5), (0, 0, 1, 2, 4, 5, 6, 7, 5)) #可以确定就是解压缩

我们会发现不是像python2中那样了!!!

 参考地址:https://www.runoob.com/python/python-func-zip.html

 

a = [1,2,3,4,5,6,7]

b = [1,2,3,4,5,6,7]

print(zip(a,b))
for (i,j) in zip(a,b):
    print(i,j)
print(list(zip(a,b)))
for (i,j) in list(zip(a,b)):
    print(i,j)

#一直不明白,为什么明明zip(a,b)和list(zip(a,b)不一样,但是for循环结果一样的

#可能就类似于这个吧!
a = range(5)
print(a)

for i in a:
    print(i)

\'\'\'
输出:
<zip object at 0x031AE6E8>
1 1
2 2
3 3
4 4
5 5
6 6
7 7
[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7)]
1 1
2 2
3 3
4 4
5 5
6 6
7 7
range(0, 5)
0
1
2
3
4
>>> 

\'\'\'

 

list(zip()) 之后元素的操作,参考博文:https://blog.csdn.net/wangxingfan316/article/details/81387652

以上是关于python zip()与zip(*ziped)以及list(zip(a,b))的主要内容,如果未能解决你的问题,请参考以下文章

Python3-笔记-C-002-函数-zip

python怎样压缩和解压缩ZIP文件

python3 zip 与tf.data.Data.zip的用法

Python中的zip()与*zip()函数详解

将文件压缩到内存并以字节python的形式读取整个存档

python-zip()函数lambdamap的单独与结合使用