如何在Python中获取类属性的定义顺序?
我想定义应该代表数据结构的轻量级类.与许多数据结构的情况一样,数据的顺序很重要.所以,如果我继续定义: class User(DataStructure): username = StringValue() password = StringValue() age = IntegerValue() 我暗示这是一个数据结构,其中首先是带有用户名的字符串,后跟带有密码的字符串,最后是用户的年龄作为整数. 如果你熟悉Python,你就会知道上面的类User是一个继承自类型的对象.就像Python中的大多数其他对象一样,它会有__dict__.这里存在我的问题.这个__dict__是一个哈希映射,因此__dict__中类属性的顺序与它们的定义顺序无关. 有什么方法可以找出实际的定义顺序吗?在我采用一种我能想到的不那么理智的方法之前,我在这里问… 哦,只是为了清楚,我想要的是一种方法来解决上述定义:[‘username’,’password’,’age’] 解决方法这在Python中根本不受支持. Django使用元类来处理它.看到这个问题: How does Django Know the Order to Render Form Fields?(摘要:查看django.forms.forms.DeclarativeFieldsMetaclass,django.forms.forms.get_declared_fields以及如何在django.forms.fields.Field中使用creation_counter.) (编辑:哈尔滨站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- python – UnicodeDecodeError:’utf8’编解码器无法解码位
- python – django:django-tables2 DetailView CBV不会显示
- python – 如何使我的SWIG扩展模块与Pickle工作?
- python – 你的字符串’与’string’相同.代码(‘XXX’)
- python – 停止使用apt-get安装已安装的依赖项
- python – 如何以有效的方式找到两个轮廓集之间的所有交点
- python – 在REST框架中返回字典而不是数组
- 沉默记录器和打印到屏幕 – Python
- Python __init__.py和类
- python – Kivy – 屏幕管理器 – 访问其他类中的属性