我有一个文件,其内容类似于[(a,b)(c,d)(a,e)],我想将a映射到b&e,将c映射到d。如何将其保留为程序?

时间:2019-04-13 12:03:37

标签: python python-3.x

我已经从数据库中检索了一些数据,其中包括用户名和他将用于工作的位置。一些用户可能使用多个位置。我已经通过python清楚地将这些数据保留在excel中。

输入: [(a,b)(c,d)(e,f)(a,g)]内容在文件中

输出:

a:b,g c:d e:f

1 个答案:

答案 0 :(得分:0)

一种可能的解决方案是创建一个字典,然后将第二个元组值附加到键上。我自由地将元素转换为字符串,以使工作代码段最少。

lst = [('a','b'),('c','d'),('e','f'), ('a','g')]
d = {}
for k,v in lst:
    d.setdefault(k, []).append(v)

输出

{'a': ['b', 'g'], 'c': ['d'], 'e': ['f']}