zip()和zip(*)的区别与使用
生活随笔
收集整理的這篇文章主要介紹了
zip()和zip(*)的区别与使用
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
zip()和zip(*)的區(qū)別與使用
- 簡(jiǎn)介
- zip(iteration)
- 傳入一個(gè)參數(shù)時(shí)
- 傳入兩個(gè)參數(shù)時(shí) zip(a,b)
- 使用
參考鏈接
簡(jiǎn)介
zip(iteration)
傳入一個(gè)參數(shù)時(shí)
zip(iteration): 它的參數(shù)為多個(gè)可迭代對(duì)象,作用是聚合每個(gè)可迭代對(duì)象中的元素。
從iteration中依次取一個(gè)元組,組成一個(gè)元組。
傳入兩個(gè)參數(shù)時(shí) zip(a,b)
zip()函數(shù)分別從a和b依次各取出一個(gè)元素組成元組,再將依次組成的元組組合成一個(gè)新的迭代器–新的zip類型數(shù)據(jù)。
- 注意:
- 要求a與b的維數(shù)相同,當(dāng)兩者具有相同的行數(shù)與列數(shù)時(shí),正常組合對(duì)應(yīng)位置元素即可;
- 當(dāng)a與b的行數(shù)或列數(shù)不同時(shí),取兩者結(jié)構(gòu)中最小的行數(shù)和列數(shù),依照最小的行數(shù)和列數(shù)將對(duì)應(yīng)位置的元素進(jìn)行組合;這時(shí)相當(dāng)于調(diào)用itertools.zip_longest(*iterables)函數(shù)。
使用
>>> grid = [[3,0,8,4],[2,4,5,7],[9,2,6,3],[0,3,1,0]] >>> list(zip(*grid)) [(3, 2, 9, 0), (0, 4, 2, 3), (8, 5, 6, 1), (4, 7, 3, 0)] >>> list(zip(grid)) [([3, 0, 8, 4],), ([2, 4, 5, 7],), ([9, 2, 6, 3],), ([0, 3, 1, 0],)]總結(jié)
以上是生活随笔為你收集整理的zip()和zip(*)的区别与使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 二分法细节学习-mid
- 下一篇: Pytorch学习 - 保存模型和重新加