python中的一個(gè)用法不清楚
問(wèn)題描述
在python編寫(xiě)爬蟲(chóng)的過(guò)程中(爬取wiki百科的詞條),使用迭代器輸出過(guò)程中出現(xiàn)了url['href']想著應(yīng)該屬于迭代器里面一個(gè)用法,但卻沒(méi)有找到,求助這個(gè)用法的意思,謝謝
#coding:utf-8import urllibimport urllib2import refrom bs4 import BeautifulSoupresp = urllib2.urlopen('https://en.wikipedia.org/wiki/Main_Page').read()soup = BeautifulSoup(resp,'html.parser')listurl = soup.findAll(’a’,href=re.compile('^/wiki/'))for url in listurl:print url.get_text(),'------>','https://en.wikipedia.org'+url['href']
最后一行的url['href'],對(duì)爬取得數(shù)據(jù)產(chǎn)生了截?cái)嗟男Ч瑳](méi)加之前,輸出為:print url輸出:Disclaimers加了之后,輸出為:print url['href']輸出:/wiki/Wikipedia:General_disclaimer求解,謝謝
問(wèn)題解答
回答1:只要實(shí)現(xiàn)了__getitem__方法的類就可以使用中括號(hào)取值。
In [16]: class A(): ...: def __getitem__(self,a): ...: return a ...: In [17]: a = A() In [18]: a[’a’], a[1] Out[18]: (’a’, 1)
相關(guān)文章:
1. angular.js - react的redux和vue的vuex,angular呢2. javascript - js 寫(xiě)一個(gè)正則 提取文本中的數(shù)據(jù)3. c++ - 如何正確的使用QWebEngineView?4. javascript - 關(guān)于Lazyload遇到的問(wèn)題5. 算法 - python 給定一個(gè)正整數(shù)a和一個(gè)包含任意個(gè)正整數(shù)的 列表 b,求所有<=a 的加法組合6. yii2中restful配置好后在nginx下報(bào)404錯(cuò)誤7. WEB-INF / classes /與WEB-INF / lib / *。jar在類路徑優(yōu)先級(jí)?8. java題目 任意一個(gè)字符串 倒置輸出,保持單詞的完整性9. java - 我在用Struts2上傳文件時(shí),報(bào)以下錯(cuò)誤怎么回事?10. javascript - 游戲里物體角色層次渲染邏輯和代碼怎么寫(xiě)才好?
