gpt4 book ai didi

python - 像在 Ruby 中一样在 Python 中定义字典

转载 作者:行者123 更新时间:2023-12-01 01:31:18 25 4
gpt4 key购买 nike

我需要将此 Ruby 代码转换为 Python:

dicts = Hash.new { |h,k| h[k] = [] }

我是 Python 新手,从未学过 Ruby。但我读了一些文档,我认为在 Python 中这应该看起来像这样:

dicts = {}.setdefault(k, [])

但我不确定。你能帮我解决这个问题吗?

最佳答案

来自 Ruby 文档:

# While this creates a new default object each time
h = Hash.new { |hash, key| hash[key] = "Go Fish: #{key}" }
h["c"] #=> "Go Fish: c"
h["c"].upcase! #=> "GO FISH: C"
h["d"] #=> "Go Fish: d"
h.keys #=> ["c", "d"]

因此,您的场景的 python 等效项是按以下方式使用 defaultdict:

from collections import defaultdict

dicts = defaultdict(list)
print(dicts['any_key']) #[]

关于python - 像在 Ruby 中一样在 Python 中定义字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52835727/

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