python用列表生成字典and合并两个字典update

一、用列表生成字典

1.1 列表的元素为一对数据:

strlist = ['a,b','c,d']
dict(map(lambda x:x.split(','),strlist)) #{'a': 'b', 'c': 'd'}

1.2. 用索引:

strlist = ['a', 'b']
dict(zip(range(len(strlist)),strlist)) #{0: 'a', 1: 'b'}
dict(zip(strlist,range(len(strlist)))) #{'a': 0, 'b': 1}

1.3. 嵌套列表:

strlist= [['k1','v1'],['k2','v2']]
dict(strlist) #{'k2': 'v2', 'k1': 'v1'}

1.4. 两个列表:

strlist1=['a', 'b']
strlist2=['k1','k2']
dict(zip(strlist2,strlist1)) #{'k2': 'b', 'k1': 'a'}

1.5.生成式

intlist = [1,2,3]
{i:i**2 for i in intlist} #{1: 1, 2: 4, 3: 9}

二、python中两个字典合并

dict1 = { "name":"owen", "age": 18 }
dict2 = { "birthday": "1999-11-22", "height": 180 }

合并两个字典得到:

{ "name":"owen", "age": 18, "birthday": "1999-11-22", "height": 180 }

方法一

dictMerged1 = dict( dict1.items() + dict2.items() )

方法二

dictMerged2 = dict( dict1, **dict2 )

方法二等同于:

dictMerged2 = dict1.copy()
dictMerged2.update( dict2 )

或者:

dictMerged2 = dict( dict1 )
dictMerged2.update( dict2 )

方法 2 比方法 1 速度快很多, 可以用 IPython 测试效率。

三、扭转字典的key和value值

reverse_word_index = dict([(value, key) for (key, value) in word_index.items()])

参考链接:
[1] https://blog.csdn.net/weixin_30332241/article/details/99668419
[2] Python 中两个字典(dict)合并 2017.11

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值