gpt4 book ai didi

python - 结合使用字典的更新和追加

转载 作者:行者123 更新时间:2023-11-30 23:34:51 25 4
gpt4 key购买 nike

假设我有一个数据文件,其中一个字符串(例如“a”、“b”、“c”...)出现多次。我希望使用“a”和“b”作为键,并且它们有多个与之关联的值。

如果我的字典是 dict,并且我使用 dict1.update({'a':1}) 后跟 dict1.update[{'a':2}],2 会覆盖值 1。但是,我无法使用 dict['a'].append([2]),除非键“a”已在文件中。

因此,我正在寻找某种方法来检查某个 key 是否已在我的列表中,在这种情况下我使用追加,或者如果不是,则使用更新。在这种情况下适用的简单条件语句是什么?

最佳答案

有两种方法:

  1. 使用defaultdict
  2. 使用您自己的 defaultdict 实现

假设您的文件如下所示:

a 1
b 4
a 2
...

然后你可以这样做:

import collections 
answer = collections.defaultdict(list)
with open('path/to/file') as infile:
for line in infile:
key, value = line.strip().split()
answer[key].append(value)

如果你不想使用defaultdict,那么:

answer = {}
with open('path/to/file') as infile:
for line in infile:
key, value = line.strip().split()
if key not in answer:
answer[key] = []
answer[key].append(value)

希望这有帮助

关于python - 结合使用字典的更新和追加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17869917/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com