gpt4 book ai didi

python - 数据容器 : class vs dictionary

转载 作者:太空狗 更新时间:2023-10-30 01:02:56 26 4
gpt4 key购买 nike

在我看来,字典比定义类和使用类更受鼓励。我什么时候应该在一个类上使用字典,什么时候相反?

例如,如果我想要一个人的字典并且每个人都有一个名字和其他属性,两种简单的方法是:

  1. 创建人的字典。每个键都是人的名字,值是这个人所有属性的字典。

  2. 创建一个包含这些属性的类Person,然后有一个Person的字典,名字是键,Person 对象的值。

这两种解决方案似乎都有效并实现了目标,但似乎 python 中的字典仍然是可行的方法。这些实现非常不同,如果我想来回切换,我可能会遇到很多变化,从基于类的实现到基于字典的实现,反之亦然。

那么我要权衡什么?

最佳答案

字典是入门或尝试解决问题的好方法。它们不能替代精心设计的类(class)。有时它是正确的“最终解决方案”和处理“我只需要携带一些数据”需求的最有效方式。我发现有时从字典开始很有用,通常最后会编写一些函数来提供我正在处理的特定案例所需的额外行为。在某些时候,我通常会发现切换到使用类而不是字典会更整洁、更干净。这通常取决于满足情境需要所需的行为的数量和复杂性。因为在 Python 中定义和使用类非常容易,所以我发现我很早就从“字典加函数”切换到类。我发现的一件事是,“快速提出解决方案”程序在很多情况下都有自己的生命——拥有可以扩展和重构的真实类比拥有大量代码更有效率那(ab)使用字典。

关于python - 数据容器 : class vs dictionary,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12468294/

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