[問題] zip()在python2、python3官方文件問題

看板Python作者 (笑面男)時間6年前 (2019/03/21 22:21), 6年前編輯推噓4(405)
留言9則, 3人參與, 6年前最新討論串1/1
我在官方文件看到在python2.7時, zip()函式的原型為zip([iterable, ...]), 但在python3.5之後就變成了zip(*iterables), 請問各位高手這有什麼差別嗎? 我只知道在python2,zip()會回傳list, 但在python3,zip()會回傳iterator, 但這跟傳入的參數應該沒有關係吧。 謝謝。 -- 生死去來,棚頭傀儡,一線斷時,落落磊磊。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.231.7.117 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1553178061.A.706.html

03/21 22:40, 6年前 , 1F
參數 和 回傳 兩件事沒關係
03/21 22:40, 1F

03/21 22:41, 6年前 , 2F
參數> 是什麼資料結構、數量、型態
03/21 22:41, 2F

03/21 22:43, 6年前 , 3F
回傳> 函式內運算後回傳的資料 <- 是什麼型態、數量
03/21 22:43, 3F

03/21 22:44, 6年前 , 4F
函式接收的"參數",不見得和運算後"回傳"有關聯
03/21 22:44, 4F
了解,謝謝j大回覆。

03/21 22:46, 6年前 , 5F
python2: zip([a, b, c, ...])
03/21 22:46, 5F

03/21 22:46, 6年前 , 6F
python3: zip(a, b, c, ...)
03/21 22:46, 6F
這裡我不太懂耶,如果a, b, c都是list,那我在python2跟python3試的結果,都是用 zip(a, b, c, ...),不知道m大這裡指的zip([a, b, c, ...])是什麼意思? 謝謝。

03/21 22:48, 6年前 , 7F
關於 *arg與**kwargs參數的用法 https://goo.gl/h1jG2R
03/21 22:48, 7F
恩,這我知道用法,謝謝。 ※ 編輯: laughingman (61.231.7.117), 03/22/2019 00:42:18

03/22 06:54, 6年前 , 8F
記錯了是zip([iterable, ...]),那感覺兩個是一樣的。
03/22 06:54, 8F
所以zip([iterable, ...])和zip(*iterables)應該是一樣的囉? ※ 編輯: laughingman (220.135.21.50), 03/22/2019 18:13:04

03/22 18:29, 6年前 , 9F
*代表接受list,**代表接受dict,是一樣沒錯
03/22 18:29, 9F
了解,謝謝w大。 ※ 編輯: laughingman (61.231.7.117), 03/23/2019 00:13:35
文章代碼(AID): #1SavtDS6 (Python)
文章代碼(AID): #1SavtDS6 (Python)