Notepad++或python比较两个列表并更改原来的更改

2024-04-26 11:11:12 发布

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

我有这个原始清单。你知道吗

John:password123
Daved:Password123
Steve:Password123
Michael:Password123

第二个列表是原始列表的随机列表,密码已更改。你知道吗

Michael:p241d111
John:fcvbfdg122
Steve:pdPo134!

我想要的是改变原来的名单与新的密码,但相同的立场。你知道吗

例如:

John:fcvbfdg122
Daved:Password123
Steve:pdPo134!
Michael:p241d111

如何在notepad++或python中做到这一点!你知道吗


Tags: 密码列表johnsteve名单michaelnotepadpassword123
1条回答
网友
1楼 · 发布于 2024-04-26 11:11:12

测试.txt

John:password123
Daved:Password123
Steve:Password123
Michael:Password123

test2.txt

Michael:p241d111
John:fcvbfdg122
Steve:pdPo134!

脚本.py

lst = {}

with open("test.txt") as f:
    for line in f:
        split = line.split(":")
        lst[split[0]] = split[1]

lst2 = {}

with open("test2.txt") as f:
    for line in f:
        split = line.split(":")
        lst2[split[0]] = split[1]

final_lst = {}

for item in lst:
    final_lst[item] = lst2.get(item, None) or lst[item]

print(final_lst)

下面是一个用Python编写的简单解决方案。你知道吗

~/temp ❯❯❯ python3 test2.py                                                                                                                                                            ⏎
{'Michael': 'p241d111', 'Steve': 'pdPo134!', 'John': 'fcvbfdg122', 'Daved': 'Password123'}

相关问题 更多 >