Python字典循环添加一键多值的用法实例

  

<强>循环写入字典键,值,删除指定的键值对:

  

原文本“jp_url.txt”每行元素以逗号分隔:

        host_key、product_id product_name、cont_start cont_end   bookId=, ah3.zhangyue.com, 100002年,掌阅,startChapterId   100002年ih3.ireader.com,掌阅,=,,   100002年www.ireader.com,掌阅,,=,,cid   100002年m.zhangyue.com,掌阅,readbook/,/bookId=, c13.shuqireader.com, 100003年,书旗,chapterId   t.shuqi.com, 100003年,书旗,/,/cid      

想要得到:

  

{‘100002’:‘product_name .......}

  

代码如下:

        def makeDict ():   fileRead=开放(jp_url.txt, rb)   行=fileRead.readlines ()   read_dict={} #定义字典   线的线:   line_list=line.split(" ") #每行按逗号分隔成列的表   id=line_list[1] #取到id   name=line_list[2] #取到的名字   read_dict [id]=#此名称处关键产生键值对,其中关键是id   read_dict.pop (product_id) #删除键为“product_id”的键值对   返回read_dict   read_dict=makeDict ()      

<强>循环写入一键对多值:

  

其中格式{关键:[value1, value2,…]}

  

文本txt格式如下:

        .guagua.cn guaguashipinliaotianshi |   iguagua.net guaguashipinliaotianshi |   .17guagua.com guaguashipinliaotianshi |   .69xiu.com jiuxiumeinvzhibo |   .estream.cn nbazhibo |   youbo | yb.sxsapp.com      

其中第一列的名字有重复想要一个名字对应多个结果,代码如下:

        def makehostDict ():   host_dict={}   f_allhost=开放(xml_host.txt, rb)   行=f_allhost.readlines ()   线的线:   line_list=line.split (“|”)   name=line_list [0]   主机=line_list [1] .strip (“\ n”)   如果主人不”:   如果host_dict.has_key(名称):   host_dict.get(名字).append(主机)#此处为关键向字典里已经有(名字)的关键值后继续添加值(主机)   其他:   host_dict.setdefault(名字,[]).append(主机)#创建{名称,(主机)}值为列表的格式的字典。   返回host_dict   host_dict=makehostDict ()   打印host_dict      

以上这篇Python字典循环添加一键多值的用法实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

Python字典循环添加一键多值的用法实例