将字典转换为列表,省略部分数据

2024-05-19 07:23:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试转换以下格式的词典:

d = {'A1': ['a', 'a', 'A2 (A3-)', 'a'],
     'B1': ['b', 'b', 'B2 (B3-)', 'b'],
     'C1': ['c', 'c', 'C2 (C3)-', 'c']}

表格列表:

e = [['A1', 'A2', 'A3'], ['B1', 'B2', 'B3'], ['C1', 'C2', 'C3']]

我知道我应该用regex来获取A2和A3的数据,但是我很难把它们放在一起


Tags: 数据a2列表a1格式b2a3regex
1条回答
网友
1楼 · 发布于 2024-05-19 07:23:00
import re

regex = re.compile(r'(\w+) \((\w+)-.*')

# I suppose that you meant (C3-) and not (C3)-
d = {'A1': ['a', 'a', 'A2 (A3-)', 'a'], 'B1': ['b', 'b', 'B2 (B3-)', 'b'], 'C1': ['c', 'c', 'C2 (C3-)', 'c']}

out = []
for key, values_list in d.items():
    v2, v3 = regex.match(values_list[2]).groups()
    out.append([key, v2, v3])

print(out)
# [['C1', 'C2', 'C3'], ['B1', 'B2', 'B3'], ['A1', 'A2', 'A3']]

请注意,顺序是随机的,因为原始的dict是无序的

相关问题 更多 >

    热门问题