創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!
創(chuàng)新互聯(lián)專注于企業(yè)網(wǎng)絡(luò)營(yíng)銷推廣、網(wǎng)站重做改版、奉節(jié)網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5場(chǎng)景定制、商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為奉節(jié)等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。本篇文章展示了python字典中一鍵多值寫入的方法,代碼簡(jiǎn)明扼要容易理解,絕對(duì)能讓你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
1、循環(huán)寫入字典key、value、刪除指定的鍵值對(duì):
原文本‘jp_url.txt’每行元素以逗號(hào)分隔:
host_key,product_id,product_name,cont_start,cont_end ah3.zhangyue.com,100002,掌閱,bookId=,&startChapterId ih3.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()
2、循環(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
擴(kuò)展知識(shí):
字典是python中唯一的一個(gè)映射類型。在dict中key是唯一的. 在保存的時(shí)候, 根據(jù)key來(lái)計(jì)算出一個(gè)內(nèi)存地址. 然后將key-value保存在這個(gè)地址中。這種算法被稱為hash算法, 所以, 切記, 在dict中存儲(chǔ)的key-value中的key'必須是可hash的, 如果你搞不懂什么是可哈希, 暫時(shí)可以這樣記, 可以改變的都是不可哈希的,那么可哈希就意味著不可變。這個(gè)是為了能準(zhǔn)確的計(jì)算內(nèi)存地址而規(guī)定的。
看完上述內(nèi)容,你們掌握python字典中一鍵多值寫入的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,感謝各位的閱讀!
網(wǎng)站名稱:python字典中一鍵多值寫入的方法-創(chuàng)新互聯(lián)
當(dāng)前URL:http://jinyejixie.com/article46/ccspeg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、企業(yè)建站、微信小程序、企業(yè)網(wǎng)站制作、網(wǎng)站排名、軟件開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容