gpt4 book ai didi

python - 用字典填充字典键的最有效方法

转载 作者:行者123 更新时间:2023-11-28 21:58:38 25 4
gpt4 key购买 nike

例如,我有 3 个 friend ,John、Carter、Bill,我想跟踪他们去过的地方。这些地方在字典中,如果他们去过这个地方,它的值为 1,如果没有,则为 0。

places = {"LA": 0, "San Jose": 0, "NY": 0}

现在设置这个是行不通的,因为它是一个浅拷贝:

friends = {"John": places, "Carter": places, "Bill": places}

我现在的简单解决方案是:

friends = {"John": {"LA": 0, "San Jose": 0, "NY": 0}, "Carter": {"LA": 0, "San Jose": 0, "NY": 0}, "Bill": {"LA": 0, "San Jose": 0, "NY": 0}}

这看起来效率不高。有没有更好的方法来完成我想在 Python 中实现的目标?是填充 friends 的语法还是完全是一种新方法?

最佳答案

如果您有一组静态城市,那么您可以将城市名称作为键存储在 map 中,并将该城市的索引作为值存储。此外,对于每个人,您可以存储一个访问列表,其中该列表的第 i 个元素表示第 i 个城市的访问次数:

places = {"LA": 0, "San Jose": 1, "NY": 2}
friends = {"John": [0, 0, 0], "Carter": [0, 0, 0], "Bill": [0, 0, 0]}

然后如果约翰访问纽约,您会:

friends["John"][places["NY"]] += 1

它比你的方法更节省内存,因为它将城市名称存储在一个地方

关于python - 用字典填充字典键的最有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17892920/

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