python的zip()函数
生活随笔
收集整理的這篇文章主要介紹了
python的zip()函数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
zip()?函數用于將可迭代對象作為參數,將對象中對應的元素打包成一個個元組,然后返回由這些元組組成的對象。
如果各個可迭代對象的元素個數不一致,則返回的對象長度與最短的可迭代對象相同。
利用 * 號操作符,與zip相反,進行解壓。
zip() 函數語法:
| 1 | zip(iterable1,iterable2, ...) |
參數說明:
- iterable -- 一個或多個可迭代對象(字符串、列表、元祖、字典)
?
Python2中:
| 1 2 3 4 5 6 7 8 9 10 | >>>a?=?[1,2,3]?#此處可迭代對象為列表 >>> b?=?[4,5,6] >>> c?=?[4,5,6,7,8] >>> zipped?=?zip(a,b)?????# 打包為元組的列表 >>> zipped [(1,?4), (2,?5), (3,?6)] >>>?zip(a,c)??????????????# 元素個數與最短的列表一致 [(1,?4), (2,?5), (3,?6)] >>>?zip(*zipped)??????????# 與 zip 相反,可理解為解壓 [(1,?2,?3), (4,?5,?6)] |
Python3中:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 | >>> a?=?[1,2,3]?#此處可迭代對象為列表 >>> b?=?[4,5,6] >>> c?=?[4,5,6,7,8] >>> zipped?=?zip(a,b) >>> zipped <zip?object?at?0x02B01B48>?#返回的是一個對象 >>>?list(zipped) [(1,?4), (2,?5), (3,?6)]?#使用list()函數轉換為列表 >>>?list(zip(a,c)) [(1,?4), (2,?5), (3,?6)] >>> zipped?=?zip(a,b) >>>?list(zip(*zipped))?#解壓也使用list進行轉換 [(1,?2,?3), (4,?5,?6)] |
?
搭配for循環支持并行迭代:
| 1 2 3 4 5 6 7 | #!/usr/bin/python3 list1?=?[2,3,4] list2?=?[4,5,6] for?x,y?in?zip(list1,list2): ????print(x,y,'--',x*y) |
結果:
| 1 2 3 | 2?4?--?8 3?5?--?15 4?6?--?24 |
?
來源:https://www.cnblogs.com/wushuaishuai/p/7766470.html
?
轉載于:https://www.cnblogs.com/yibeimingyue/p/11275580.html
總結
以上是生活随笔為你收集整理的python的zip()函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 测试必备:单元测试测试类,以帮助匿名管理
- 下一篇: MySQL8.0.19下载安装及配置详细