Python字典循環(huán)添加一鍵多值的用法實(shí)例
循環(huán)寫入字典key、value、刪除指定的鍵值對(duì):
原文本‘jp_url.txt'每行元素以逗號(hào)分隔:
host_key,product_id,product_name,cont_start,cont_end ah2.zhangyue.com,100002,掌閱,bookId=,&startChapterId ih2.ireader.com,100002,掌閱,bid=,& www.ireader.com,100002,掌閱,&bid=,&cid m.zhangyue.com,100002,掌閱,readbook/,/ c13.shuqireader.com,100003,書旗,bookId=,&chapterId t.shuqi.com,100003,書旗,bid/,/cid
想要得到:
{‘100002':‘product_name'.......}
代碼如下:
def makeDict(): fileRead=open('jp_url.txt','rb') lines=fileRead.readlines() read_dict={}#定義字典 for line in lines: line_list=line.split(',')#每行按逗號(hào)分隔成列表 id=line_list[1]#取到id name=line_list[2]#取到name read_dict[id]=name#此處關(guān)鍵產(chǎn)生鍵值對(duì),其中key是id read_dict.pop('product_id')#刪除key為‘product_id'的鍵值對(duì) return read_dict read_dict=makeDict()
循環(huán)寫入一鍵對(duì)多值:
其中格式{key:[value1,value2,...]}
文本txt格式如下:
guaguashipinliaotianshi|.guagua.cn, guaguashipinliaotianshi|iguagua.net, guaguashipinliaotianshi|.17guagua.com, jiuxiumeinvzhibo|.69xiu.com, nbazhibo|.estream.cn, youbo|yb.sxsapp.com,
其中第一列的名字有重復(fù)想要一個(gè)名字對(duì)應(yīng)多個(gè)結(jié)果,代碼如下:
def makehostDict(): host_dict={} f_allhost=open('xml_host.txt','rb') lines=f_allhost.readlines() for line in lines: line_list=line.split('|') name=line_list[0] host=line_list[1].strip('\n') if host is not '': if host_dict.has_key(name): host_dict.get(name).append(host)#此處為關(guān)鍵向字典里已經(jīng)有的key(name)值后繼續(xù)添加value(host) else: host_dict.setdefault(name,[]).append(host)#創(chuàng)建{name,[host]}value為列表的格式的字典。 return host_dict host_dict=makehostDict() print host_dict
以上這篇Python字典循環(huán)添加一鍵多值的用法實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
詳解利用Pandas求解兩個(gè)DataFrame的差集,交集,并集
這篇文章主要和大家講解一下如何利用Pandas函數(shù)求解兩個(gè)DataFrame的差集、交集、并集,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2022-07-07Python查找算法之分塊查找算法的實(shí)現(xiàn)
這篇文章主要介紹了Python查找算法之分塊查找算法的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04如何用Anaconda搭建虛擬環(huán)境并創(chuàng)建Django項(xiàng)目
在本篇文章里小編給大家整理了關(guān)于如何用Anaconda搭建虛擬環(huán)境并創(chuàng)建Django項(xiàng)目的相關(guān)文章,需要的朋友們可以跟著學(xué)習(xí)下。2020-08-08Python sorted對(duì)list和dict排序
這篇文章主要介紹了Python sorted對(duì)list和dict排序,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06一文教你用python編寫Dijkstra算法進(jìn)行機(jī)器人路徑規(guī)劃
迪杰斯特拉(Dijkstra)算法是典型最短路徑算法,用于計(jì)算一個(gè)節(jié)點(diǎn)到其他節(jié)點(diǎn)的最短路徑,這篇文章主要給大家介紹了關(guān)于利用python編寫Dijkstra算法進(jìn)行機(jī)器人路徑規(guī)劃的相關(guān)資料,需要的朋友可以參考下2021-08-08python包pdfkit(wkhtmltopdf)?將HTML轉(zhuǎn)換為PDF的操作方法
pdfkit,把HTML+CSS格式的文件轉(zhuǎn)換成PDF格式文檔的一種工具。它就是html轉(zhuǎn)成pdf工具包wkhtmltopdf的Python封裝。所以,必須手動(dòng)安裝wkhtmltopdf,這篇文章主要介紹了python包pdfkit(wkhtmltopdf)將HTML轉(zhuǎn)換為PDF,需要的朋友可以參考下2022-04-04Python3-異步進(jìn)程回調(diào)函數(shù)(callback())介紹
這篇文章主要介紹了Python3-異步進(jìn)程回調(diào)函數(shù)(callback())介紹,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-05-05Python3+Django get/post請(qǐng)求實(shí)現(xiàn)教程詳解
這篇文章主要介紹了Python3+Django get/post請(qǐng)求實(shí)現(xiàn)教程詳解,需要的朋友可以參考下2021-02-02基于python實(shí)現(xiàn)判斷字符串是否數(shù)字算法
這篇文章主要介紹了基于python實(shí)現(xiàn)判斷字符串是否數(shù)字算法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07