1. 程式人生 > >Python 中zip()函數的用法

Python 中zip()函數的用法

方便 函數 function 循環 3.0 速度 支持 get 對象

1. 定義:

zip()是Python的一個內建函數,它接受一系列可叠代的對象作為參數,將對象中對應的元素打包成一個個tuple(元組),然後返回由這些tuples組成的list(列表)。

若傳入參數的長度不等,則返回list的長度和參數中長度最短的對象相同。利用*號操作符,可以將list unzip(解壓)。

2. 常見用法:

  A. 使用zip()函數來可以把列表合並,並創建一個元組對的列表

   需要註意的是:在python 3.0zip()是可叠代對象,使用時必須將其包含在一個list中,方便一次性顯示出所有結果

   如圖:   技術分享

  B. zip()參數可以接受任何類型的序列,同時也可以有兩個以上的參數;當傳入參數的長度不同時,zip能自動以最短序列長度為準進行截取,獲得元組。

   如圖:   技術分享

  C. 搭配for循環,支持並行叠代

   如圖: 技術分享

  D. zip() 和 * 操作符一起操作可以用來 unzip 一個列表:

   如圖:    技術分享

    註:在函數調用中使用*list/tuple的方式表示將list/tuple分開,作為位置參數傳遞給對應函數(前提是對應函數支持不定個數的位置參數)

  E:二維矩陣變換(矩陣的行列互換)

    列表推導的方法

    zip函數: 這種方法速度更快但也更難以理解,將list看成tuple解壓,恰好得到我們“行列互換”的效果,再通過對每個元素應用list()函數,將tuple轉換為list

      技術分享

F:以指定概率獲取元素:

  

Python 中zip()函數的用法