最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

使用Python合并字典键值并去除重复元素的实例代码

来源:动视网 责编:小采 时间:2020-11-27 14:15:17
文档

使用Python合并字典键值并去除重复元素的实例代码

使用Python合并字典键值并去除重复元素的实例代码:假设在python中有一字典如下:x={a':'1,2,3', b':'2,3,4'}需要合并为:x={c':'1,2,3,4'}需要做到三件事: 1. 将字符串转化为数值列表 2. 合并两个列表并添加新的键值 3. 去除重复元素第1步通过常用的函数
推荐度:
导读使用Python合并字典键值并去除重复元素的实例代码:假设在python中有一字典如下:x={a':'1,2,3', b':'2,3,4'}需要合并为:x={c':'1,2,3,4'}需要做到三件事: 1. 将字符串转化为数值列表 2. 合并两个列表并添加新的键值 3. 去除重复元素第1步通过常用的函数
 假设在python中有一字典如下:
x={‘a':'1,2,3', ‘b':'2,3,4'}
需要合并为:
x={‘c':'1,2,3,4'}
需要做到三件事:
1. 将字符串转化为数值列表
2. 合并两个列表并添加新的键值
3. 去除重复元素
第1步通过常用的函数eval()就可以做到了,第2步需要添加一个键值并添加元素,第3步利用set集合的性质可以达到去重的效果,不过最后需要再将set集合转化为list列表。代码如下:

x={'a':'1,2,3','b':'2,3,4'}
x['c']=list(set(eval(x['a'])+eval(x['b'])))
del x['a']
del x['b']
print x


输出结果为:
{'c': [1, 2, 3, 4]}
但是在批量处理中,可能会其中一个键值的元素只有1个,导致编译器会识别为int类型,导致出现错误。

x={'a':'1,2,3','b':'2'}
x['c']=list(set(eval(x['a'])+eval(x['b'])))
del x['a']
del x['b']
print x


运行结果为:

Traceback (most recent call last):
 File "test.py", line 2, in <module>
 x['c']=list(set(eval(x['a'])+eval(x['b'])))
TypeError: can only concatenate tuple (not "int") to tuple


处理方法是,人为地将'b'中的元素复制一份,使编译器不识别为int:

x={'a':'1,2,3','b':'2'}
x['c']=list(set(eval(x['a'])+eval(x['b']+','+x['b'])))
del x['a']
del x['b']
print x


这样就能正常运行。这里利用了set会去去除重复元素的特点,添加了相同的元素。不过,若是'b'中的元素为空,这个方法也会失效。这里需要利用python列表中最后一个元素后面允许跟一个逗号的性质,按如下方法处理即可。

x={'a':'1,2,3','b':''}
x['c']=list(set(eval(x['a']+','+x['b'])))
del x['a']
del x['b']
print x


运行结果:
{'c': [1, 2, 3]}
最后一种方法也能够处理前两种情况。

-->

文档

使用Python合并字典键值并去除重复元素的实例代码

使用Python合并字典键值并去除重复元素的实例代码:假设在python中有一字典如下:x={a':'1,2,3', b':'2,3,4'}需要合并为:x={c':'1,2,3,4'}需要做到三件事: 1. 将字符串转化为数值列表 2. 合并两个列表并添加新的键值 3. 去除重复元素第1步通过常用的函数
推荐度:
标签: 相同的 合并 python
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top