色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術(shù)文章
文章詳情頁

基于python for in if 連著寫與分開寫的區(qū)別說明

瀏覽:2日期:2022-06-24 09:53:38
如下:

links.extend(link for link in get_links(html) if re.match(link_regex, link))# 上面的語句分開寫,如下# 但下面需要使用links.append,如果依然使用links.extend會出現(xiàn)錯誤的結(jié)果for link in get_links(html): if re.match(link_regex, link): links.append(link)

讓我們用ipython做個實驗:

基于python for in if 連著寫與分開寫的區(qū)別說明

由上圖可以看出,for in if 連擊推導(dǎo)式隱式的將link由str轉(zhuǎn)變?yōu)榱薼ist,而分開寫是不會幫我們轉(zhuǎn)換的,所以需要使用append把整個str加入到list.

補(bǔ)充:python的for i in list 陷阱

d = [1,2,3,4,5]for i in d: d.remove(i)print d

結(jié)果是 :

[2, 4]

這個陷阱比較隱蔽,我再用白盒子測試的時候,發(fā)現(xiàn)了這個bug,大致原因就是remove d[0]之后,i 自動變成了 d[1], 但是 d已經(jīng)變成了 d[2,3,4,5],所以i=d[1]就悲催的指向了3,跳過了2!

看來python還是要注意了解底層實現(xiàn)啊!

解決辦法是

d = [1,2,3,4,5]for i in d[:]: d.remove(i)print d

就可以實現(xiàn)邊遍歷邊刪除了

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。如有錯誤或未考慮完全的地方,望不吝賜教。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 久草视频2 | 精品国语_高清国语自产 | 日韩免费一级a毛片在线播放一级 | 在线观看国产情趣免费视频 | 色网站在线 | 国产精品特黄一级国产大片 | 国产精品免费观看视频播放 | 日本成人在线视频网站 | 日本成人在线免费 | 中文字幕一区在线 | 久久久久久极精品久久久 | 亚洲精品日韩一区二区 | 欧美日韩在线播一区二区三区 | 国产精品免费观在线 | 久久性久久性久久久爽 | 免费人成激情视频在线观看冫 | 在线视频精品一区 | 欧美一区二区三区视频 | 九九在线观看精品视频6 | 8050网午夜一级毛片免费不卡 | 日韩在线精品 | 国内精品99 | 成人在线第一页 | 亚洲午夜精品一区二区 | 亚洲欧洲国产成人精品 | 国产亚洲免费观看 | 一级网站片 | 国内自拍视频一区二区三区 | 欧美视频在线观在线看 | 欧美成人在线影院 | 久久精品视频观看 | 色综合a怡红院怡红院首页 色综合精品久久久久久久 色综合九九 | 亚洲精品欧美精品国产精品 | 亚洲欧美精品一中文字幕 | 欧美影院久久 | 欧美日韩99| 二区国产| 欧美综合成人网 | 久久精品国产一区 | 日韩欧美国产精品 | 亚洲成人在线网 |