Python - 如何按定义的顺序将类变量存储到数组中[重复]
Posted
技术标签:
【中文标题】Python - 如何按定义的顺序将类变量存储到数组中[重复]【英文标题】:Python - How to store class variables to array in defined order [duplicate] 【发布时间】:2021-11-07 12:06:02 【问题描述】:我有这个简单的 Python 代码
class Person:
name = ""
surname = ""
age = ""
def __init__(self):
arr = #I want something like this ['name', 'surname', 'age']
如何按我想要的 (['name', 'surname', 'age']) 排列这些变量?没有先用“self”“初始化”它们?谢谢。
编辑:我需要它们按照我定义它们的确切顺序,而不是字母顺序。
【问题讨论】:
您的用例是什么,为什么要这样做? 你可以使用vars(Person)
来检查类的命名空间
【参考方案1】:
可能类似于下面的__dict__
:
class Person:
name = ""
surname = ""
age = ""
def __init__(self):
arr = [attr for attr in Person.__dict__ if ('_' not in attr) & (not callable(getattr(Person, attr)))]
print(arr)
Person()
输出:
['name', 'surname', 'age']
【讨论】:
以上是关于Python - 如何按定义的顺序将类变量存储到数组中[重复]的主要内容,如果未能解决你的问题,请参考以下文章