欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Python中zip()函數用法實例教程

系統 1617 0

本文實例講述了Python中zip()函數的定義及用法,相信對于Python初學者有一定的借鑒價值。詳情如下:

一、定義:

zip([iterable, ...])
zip()是Python的一個內建函數,它接受一系列可迭代的對象作為參數,將對象中對應的元素打包成一個個tuple(元組),然后返回由這些tuples組成的list(列表)。若傳入參數的長度不等,則返回list的長度和參數中長度最短的對象相同。利用*號操作符,可以將list unzip(解壓)。

二、用法示例:

讀者看看下面的例子,對zip()函數的基本用法就可以明白了:

            
>>> a = [1,2,3]
>>> b = [4,5,6]
>>> c = [4,5,6,7,8]
>>> zipped = zip(a,b)
[(1, 4), (2, 5), (3, 6)]
>>> zip(a,c)
[(1, 4), (2, 5), (3, 6)]
>>> zip(*zipped)
[(1, 2, 3), (4, 5, 6)]

          

對于這個并不是很常用函數,下面舉幾個例子說明它的用法:

1.二維矩陣變換(矩陣的行列互換)

比如我們有一個由列表描述的二維矩陣

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

          

通過python列表推導的方法,我們也能輕易完成這個任務

            
print [ [row[col] for row in a] for col in range(len(a[0]))]
[[1, 4, 7], [2, 5, 8], [3, 6, 9]]

          

另外一種讓人困惑的方法就是利用zip函數:

            
>>> a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
>>> zip(*a)
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]
>>> map(list,zip(*a))
[[1, 4, 7], [2, 5, 8], [3, 6, 9]]

          

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

2.以指定概率獲取元素

            
>>> import random
>>> def random_pick(seq,probabilities):
 x = random.uniform(0, 1)
 cumulative_probability = 0.0
 for item, item_probability in zip(seq, probabilities):
 cumulative_probability += item_probability
 if x < cumulative_probability: break
 return item

>>> for i in range(15):
 random_pick("abc",[0.1,0.3,0.6])
 
'c'
'b'
'c'
'c'
'a'
'b'
'c'
'c'
'c'
'a'
'b'
'b'
'c'
'a'
'c'


          

這個函數有個限制,指定概率的列表必須和元素一一對應,而且和為1,否則這個函數可能不能像預想的那樣工作。

這里需要稍微解釋下,先利用random.uniform()函數生成一個0-1之間的隨機數并復制給x,利用zip()函數將元素和他對應的概率打包成tuple,然后將每個元素的概率進行疊加,直到和大于x終止循環
這樣,”a”被選中的概率就是x取值位于0-0.1的概率,同理”b”為0.1-0.4,”c”為0.4-1.0,假設x是在0-1之間平均取值的,顯然我們的目的已經達到。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 色99视频 | 成人福利视频网 | 欧美在线观看视频一区 | 机器人男友 | 五月婷婷久久综合 | 中文线码中文高清播放中 | 日本在线观看视频网站 | 欧美成人18性 | 欧美在线小视频 | 国产精品一区二区三区在线播放 | av网站免费 | 2022国产91精品久久久久久 | chinese 军人 gay xx 呻吟 | 草草在线免费视频 | 成人精品视频 | 三级三级三级a三级三级 | 秋霞久久国产精品电影院 | 99久久99热久久精品免费看 | 嗯啊你轻点好深啊hh在线播放 | 91国在线国内在线播放 | 日本午夜在线观看 | 亚洲一区二区色情苍井空 | 久草电影天堂 | av一级毛片 | 一区二区av | 国产精品入口免费麻豆 | 日韩午夜伦y4480私人影院 | 久草在线观看福利视频 | 欧美1区 | 久久人人爽人人爽人人片av不 | 欧美日韩一区精品 | 一级在线观看视频 | 国产成人午夜精品5599 | 91久久亚洲精品一区二区 | 91国色| 香蕉久久a毛片 | 贺鹏个人资料 | 免费av在线播放 | 欧美美女动态图 | 成人免费视频观看视频 | 性开放的欧美大片按摩 |