python-通过名称引用对象作为属性
发布时间:2020-12-17 17:36:17 所属栏目:Python 来源:网络整理
导读:是否有充分的理由将对象列表存储为“子属性”?在下面的示例中,我将几个动物对象存储在Zoo中的animals属性下,例如zoo.animals. .这种语法使访问存储的动物的属性更加容易,我想知道是否还没有考虑到这种构造的缺点: class Animal(object): def __init__(self
是否有充分的理由将对象列表存储为“子属性”?在下面的示例中,我将几个动物对象存储在Zoo中的animals属性下,例如zoo.animals.<按名称引用的动物对象>.这种语法使访问存储的动物的属性更加容易,我想知道是否还没有考虑到这种构造的缺点:
最佳答案
我认为,这样做会使您的代码难以调试,不灵活且不可读.这是一个坏主意.如果发生以下情况,会发生什么情况:
>您的动物名包含空格?如“电鳗”?
>本质上,您可能必须重新实现所有标准容器功能,例如插入,添加,删除,过滤等,或者使用非常不直观的语法. >您如何将其与另一个动物园合并或过滤?此外,如果需要,也无法对这些值进行排序. 属性旨在“保留”建模对象的数据或“描述特征”.您仅应将它们用于此目的. 当您主要在寻找快速便捷的访问方式时,请使用dict或OrderedDict:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |