当前位置:   article > 正文

求字典key的和python_python怎么将字典key相同的value值, 合并

python 处理文本如果跟上一行key一致

python怎么将字典key相同的value值, 以逗号隔开,整为一行数据

源数据:

test_dict1 = {'text': '50.00€ Rabatt für Bestellungen über 10.00€', 'strong_off': '50.00€', 'html_text': '50.00€ Rabatt für Bestellungen über 10.00€'}

test_dict2 = {'text': '80.00€ Rabatt für Bestellungen über 20.00€', 'strong_off': '80.00€', 'html_text': '80.00€ Rabatt für Bestellungen über 20.00€'}

输出结果如下:

{'text': '50.00€ Rabatt für Bestellungen über 10.00€, 80.00€ Rabatt für Bestellungen über 20.00€', 'strong_off': '50.00€, 80.00€', 'html_text': '50.00€ Rabatt für Bestellungen über 10.00€, 80.00€ Rabatt für Bestellungen über 20.00€'}

用一到两行代码实现上面的要求:

下面是三个方案:最好的是第一个,最差的是第三个

'''

from timeit import timeit

def test110():

all_test_dict = {key: ", ".join([test_dict1[key], test_dict2[key]]) for key in test_dict1 if key in test_dict2}

# print(all_test_dict)

def test112():

all_test_dict = {}

for key in test_dict1.keys() & test_dict2.keys():

all_test_dict[key] = "{},{}".format(test_dict1[key], test_dict2[key])

# print(all_test_dict)

def test113():

for key in test_dict1:

test_dict1[key] += ',' + test_dict2.get(key)

# print(test_dict1)

print(timeit(stmt=test110, number=1000))

print(timeit(stmt=test112, number=1000))

print(timeit(stmt=test113, number=1000))

'''

输出时间:

0.0028012706343090144

0.004388619569021927

0.00776079210373197

相关链接:

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号