python字典中如何一键多值的写入?

python字典中一键多值写入的方法:

1、循环写入字典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()

2、循环写入一键对多值:

其中格式{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字典中如何一键多值的写入?的详细内容,更多请关注php中文网其它相关文章!

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

python字典一键多值_python字典中如何一键多值的写入?相关推荐

  1. python的pandas库中如何计算每列出现最多的值_Python Pandas中根据列的值选取多行数据...

    Pandas中根据列的值选取多行数据 # 选取等于某些值的行记录 用 == df.loc[df['column_name'] == some_value] # 选取某列是否是某一类型的数值 用 isi ...

  2. python定义一个字典并遍历字典中的键和值_python字典操作总结

    创建 方法一: 方法二:从Python 2.2 版本起,可以使用一个工厂方法,传入一个元素是列表的元组作为参数 方法三: 从Python 2.3 版本起, 可以用一个很方便的内建方法fromkeys( ...

  3. python中字符串的布尔值_Python基础之字符串,布尔值,整数,列表,元组,字典,集合...

    一.str字符串 1.capitalize字符串首字母大写 name = "json" v = name.capitalize() print(v) # 输出结果: Json 2. ...

  4. python字典怎么添加值_python字典中如何添加键值对

    添加键值对 首先定义一个空字典 1 >>> dic={} 直接对字典中不存在的key进行赋值来添加 1 2 3 >>> dic['name']='zhangsan' ...

  5. python字典取值_python 字典中取值的两种方法小结

    python 字典中取值的两种方法小结 如下所示: a={'name':'tony','sex':'male'} 获得name的值的方式有两种 print a['name'],type(a['name ...

  6. [转载] python字典更新值_Python–字典元组值更新

    参考链接: Python字典| update方法 有时在处理元组数据时,我们在执行其版本时会遇到问题,原因是它是不可变的.讨论字典中元组值的版本.这在许多领域都有应用,因为字典通常是web开发和数据科 ...

  7. python字典取值_python字典,python字典取值

    字典(Dictionary)字典也是Python语言中经常使用的一种数据类型.跟列表类似,字典是另外一种可存储任意类型的数据,并且字典储存的数据也是可以修改的.不同于列表的是,字典每个基本元素都包括两 ...

  8. python字典更新值_Python–字典元组值更新

    有时在处理元组数据时,我们在执行其版本时会遇到问题,原因是它是不可变的.讨论字典中元组值的版本.这在许多领域都有应用,因为字典通常是web开发和数据科学领域中流行的数据类型.让我们讨论解决这个问题的某 ...

  9. python字典的实现原理_Python字典的实现原理

    以下是自己的学习记录,算是一个总结. 接下来会依次对下面问题做一个解答: 1. Python的dict和set为什么是无序的? 2. 为什么不是所有的python对象都可以用作dict的键和set中的 ...

最新文章

  1. npp夜光数据介绍 viirs_惊艳!珞珈一号卫星“眼中”的夜光衡水
  2. ROS知识【10】:ROS通信
  3. [云炬创业学笔记]第一章创业是什么测试13
  4. CVPR 2019 开源论文 | 基于翻译向量的图像翻译
  5. 不断学习UI框架的写法
  6. 很抱歉,博主 AFO 了
  7. 问题:android学习内容破碎,我个人关于如何学习android的一些个人经历
  8. 推荐几本对于学习WebGL有帮助的书籍
  9. Kubernetes 搭建 ES 集群(存储使用 cephfs)
  10. shell初级-----更多结构化命令
  11. radio默认选中第一个_Mybatis学习之路【1】-- 第一个程序
  12. python获取子窗口句柄
  13. 伺服电机算功率基本公式_伺服电机功率计算选型.ppt
  14. Qt 之 QQ系统表情(一)
  15. python制作中文词云图_Python3制作中文词云图
  16. 爬虫爬取的网页源代码是\uxxxx格式的,如何进行解码?
  17. maven项目报error in opening zip file.
  18. java.lang.Exception: Method XXX should have no parameters
  19. 【电子签名】如何使用Adobe Acrobat Pro DC给PDF文件添加自己的电子签名、选项勾选和日期填写
  20. 名字中间一条线怎么弄_网名怎么加横线啊 网名中间加一条横线

热门文章

  1. 国外物联网平台初探(四):Ayla Networks
  2. SSL 1460——最小代价问题
  3. 大数的减法函数--c语言
  4. Matlab并行编程方法1
  5. js 获取URL后面的参数
  6. AutoIt脚本在做自动化操作的时候,如何进行错误捕获?
  7. Apache反向代理设置【转载】
  8. dfasdfasdfas
  9. pkg-config工具在实际工程中的用法
  10. ASP.NET重用代码技术 - 代码绑定技术