如何访问模块对象上的dir()Python属性?
我是Python新手。我在一家使用Python 2.7的公司工作 我导入一个模块对象,该对象具有函数字段和SQLAlchemy类。我需要对课程做些什么。我想我可以通过调用导入的模块对象上的如何访问模块对象上的dir()Python属性?,python,python-2.7,Python,Python 2.7,我是Python新手。我在一家使用Python 2.7的公司工作 我导入一个模块对象,该对象具有函数字段和SQLAlchemy类。我需要对课程做些什么。我想我可以通过调用导入的模块对象上的dir()来访问这些类,然后循环遍历从dir()返回的值,然后测试每个值是否是类。我认为这会奏效: def get_legacy_data_and_serialize(): for m in dir(all_models): if inspect.isclass(getattr(all
dir()
来访问这些类,然后循环遍历从dir()
返回的值,然后测试每个值是否是类。我认为这会奏效:
def get_legacy_data_and_serialize():
for m in dir(all_models):
if inspect.isclass(getattr(all_models, m)):
print(all_models.m)
但我得到:
AttributeError: 'module' object has no attribute 'm'
当我调用dirs()时,会返回如下项:
Base
Client
ClientDetail
Comment
Common
Contact
File
FormData
Ghost
Identified
LabSet
Message
Sender
Subscription
Todo
TodoList
User
UserDetail
__all__
__builtins__
__doc__
__file__
__name__
__package__
__path__
_create_practice
add
add_templates
add_todo
and_
app
大写的名字就是我要找的名字。如何访问它们 改变这一点:
all_models.m
为此:
getattr(all_models, m)
尝试print(getattr(all_models,m))
而不是print(all_models.m)