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


Posted in Python onJanuary 20, 2019

循环写入字典key、value、删除指定的键值对:

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

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(',')#每行按逗号分隔成列表
    id=line_list[1]#取到id
    name=line_list[2]#取到name
    read_dict[id]=name#此处关键产生键值对,其中key是id
  read_dict.pop('product_id')#删除key为‘product_id'的键值对
  return read_dict
read_dict=makeDict()

循环写入一键对多值:

其中格式{key:[value1,value2,...]}

文本txt格式如下:

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

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

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)#此处为关键向字典里已经有的key(name)值后继续添加value(host)
      else:
        host_dict.setdefault(name,[]).append(host)#创建{name,[host]}value为列表的格式的字典。
  return host_dict
host_dict=makehostDict()
print host_dict

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

Python 相关文章推荐
Python中除法使用的注意事项
Aug 21 Python
Python中的MongoDB基本操作:连接、查询实例
Feb 13 Python
python实现清屏的方法
Apr 30 Python
Python打印斐波拉契数列实例
Jul 07 Python
浅析Python中元祖、列表和字典的区别
Aug 17 Python
利用python实现数据分析
Jan 11 Python
pytorch 把MNIST数据集转换成图片和txt的方法
May 20 Python
对dataframe进行列相加,行相加的实例
Jun 08 Python
linux安装python修改默认python版本方法
Mar 31 Python
python使用pandas处理大数据节省内存技巧(推荐)
May 05 Python
如何更换python默认编辑器的背景色
Aug 10 Python
Python实现播放和录制声音的功能
Aug 12 Python
在PyCharm中批量查找及替换的方法
Jan 20 #Python
Python 移动光标位置的方法
Jan 20 #Python
Pycharm之快速定位到某行快捷键的方法
Jan 20 #Python
python实现画五角星和螺旋线的示例
Jan 20 #Python
在Pycharm中对代码进行注释和缩进的方法详解
Jan 20 #Python
解决pycharm的Python console不能调试当前程序的问题
Jan 20 #Python
django解决跨域请求的问题详解
Jan 20 #Python
You might like
用php获取本周,上周,本月,上月,本季度日期的代码
2009/08/05 PHP
php将从数据库中获得的数据转换成json格式并输出的方法
2018/08/21 PHP
对 lightbox JS 图片控件进行了一下改造, 使其他支持复杂的图片说明
2010/03/20 Javascript
JS input文本框禁用右键和复制粘贴功能的代码
2010/04/15 Javascript
jquery $.ajax()取xml数据的小问题解决方法
2010/11/20 Javascript
jQuery autocomplate 自扩展插件、自动完成示例代码
2011/03/28 Javascript
jQuery 关于伪类选择符的使用说明
2013/04/24 Javascript
异步JS框架的作用以及实现方法
2015/10/29 Javascript
基于jquery实现表格内容筛选功能实例解析
2016/05/09 Javascript
jQuery EasyUI基础教程之EasyUI常用组件(推荐)
2016/07/15 Javascript
微信开发 JS-SDK 6.0.2 经常遇到问题总结
2016/12/08 Javascript
jQuery插件echarts去掉垂直网格线用法示例
2017/03/03 Javascript
详解vue-cli快速构建项目以及引入bootstrap、jq
2017/05/26 Javascript
JavaScript基本语法_动力节点Java学院整理
2017/06/26 Javascript
Vue用v-for给src属性赋值的方法
2018/03/03 Javascript
node基于puppeteer模拟登录抓取页面的实现
2018/05/09 Javascript
如何测量vue应用运行时的性能
2019/06/21 Javascript
JS实现秒杀倒计时特效
2020/01/02 Javascript
Node 模块原理与用法详解
2020/05/13 Javascript
全面解析js中的原型,原型对象,原型链
2021/01/25 Javascript
python读取oracle函数返回值
2016/07/18 Python
python模块之sys模块和序列化模块(实例讲解)
2017/09/13 Python
Python中的单继承与多继承实例分析
2018/05/10 Python
python smtplib模块实现发送邮件带附件sendmail
2018/05/22 Python
HTML块级标签汇总(小篇)
2016/07/13 HTML / CSS
Bogner美国官网:滑雪服中的”Dior”
2018/01/30 全球购物
UNIONBAY官网:美国青少年服装品牌
2019/03/26 全球购物
俄罗斯卫浴采暖及维修用品超级市场:Dkrussia
2020/05/12 全球购物
opencv实现图像平移效果
2021/03/24 Python
环境工程专业自荐信范文
2014/06/24 职场文书
门卫岗位职责说明书
2014/08/18 职场文书
大学生心理健康活动总结
2015/05/08 职场文书
先进基层党组织事迹材料2016
2016/02/29 职场文书
pandas:get_dummies()与pd.factorize()的用法及区别说明
2021/05/21 Python
python简单验证码识别的实现过程
2021/06/20 Python
Python实现日志实时监测的示例详解
2022/04/06 Python