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 相关文章推荐
wxPython窗口的继承机制实例分析
Sep 28 Python
Python中用sleep()方法操作时间的教程
May 22 Python
给Python入门者的一些编程建议
Jun 15 Python
python实现图片批量压缩程序
Jul 23 Python
使用 Python 实现简单的 switch/case 语句的方法
Sep 17 Python
详解如何管理多个Python版本和虚拟环境
May 10 Python
Python实现Singleton模式的方式详解
Aug 08 Python
python pycharm最新版本激活码(永久有效)附python安装教程
Sep 18 Python
python itsdangerous模块的具体使用方法
Feb 17 Python
python中sympy库求常微分方程的用法
Apr 28 Python
pip已经安装好第三方库但pycharm中import时还是标红的解决方案
Oct 09 Python
Python基于execjs运行js过程解析
Nov 27 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数字格式化
2006/12/06 PHP
超强分页类2.0发布,支持自定义风格,默认4种显示模式
2007/01/02 PHP
PHP Undefined index报错的修复方法
2011/07/17 PHP
PhpMyAdmin出现export.php Missing parameter: what /export_type错误解决方法
2012/08/09 PHP
php生成txt文件标题及内容的方法
2014/01/16 PHP
19个超实用的PHP代码片段
2014/03/14 PHP
php数据库的增删改查 php与javascript之间的交互
2017/08/31 PHP
php中对象引用和复制实例分析
2019/08/14 PHP
学习ExtJS Window常用方法
2009/10/07 Javascript
jquery.Jwin.js 基于jquery的弹出层插件代码
2012/05/23 Javascript
利用js(jquery)操作Cookie的方法说明
2013/12/19 Javascript
使用 TypeScript 重新编写的 JavaScript 坦克大战游戏代码
2015/04/07 Javascript
JS判断输入的字符串是否是数字的方法(正则表达式)
2016/11/29 Javascript
js监听html页面的上下滚动事件方法
2018/09/11 Javascript
开发用到的js封装方法(20种)
2018/10/12 Javascript
js实现json数组分组合并操作示例
2019/02/12 Javascript
简单掌握Python中glob模块查找文件路径的用法
2016/07/05 Python
解决安装python库时windows error5 报错的问题
2018/10/21 Python
对python模块中多个类的用法详解
2019/01/10 Python
Python数据可视化教程之Matplotlib实现各种图表实例
2019/01/13 Python
通过python实现windows桌面截图代码实例
2020/01/17 Python
Python3.6安装卸载、执行命令、执行py文件的方法详解
2020/02/20 Python
opencv 形态学变换(开运算,闭运算,梯度运算)
2020/07/07 Python
协程Python 中实现多任务耗资源最小的方式
2020/10/19 Python
用React加CSS3实现微信拆红包动画效果
2017/03/13 HTML / CSS
运动服饰每月订阅盒:Ellie
2018/04/29 全球购物
Antler英国官网:购买安特丽行李箱、拉杆箱
2019/08/25 全球购物
Java中的类包括什么内容?设计时要注意哪些方面
2012/05/23 面试题
长安大学毕业生自我鉴定
2014/01/17 职场文书
生产部管理制度
2014/01/31 职场文书
优秀少先队员主要事迹材料
2014/05/28 职场文书
2014保险公司内勤工作总结
2014/12/16 职场文书
商务信函英语问候语
2015/11/10 职场文书
技术转让协议书
2016/03/19 职场文书
go语言中fallthrough的用法说明
2021/05/06 Golang
深入详解JS函数的柯里化
2021/06/09 Javascript