首页 > 解决方案 > 使用字符串列表调用函数、对象属性或模块

问题描述

我有一个模块名称列表:

md = ['md1','md2','md3']

每个模块都有一个名为object属性的类name

class object:
    name = 'obj'

在另一个脚本中,我想object从所有模块中输出类的所有属性值(假设我已经导入了它):

for x in md:
    print(x.object.name)

我的期望是:

# Attribute values from class 'object' from all modules
obj
obj
obj

但是当我尝试这个时,它给了我这个错误:

Traceback (most recent call last):
  File "<stdin>", line 2, in <module>
AttributeError: 'str' object has no attribute 'name'

标签: python-3.x

解决方案


formatstr。这将起作用。 ('{}'.format(module_name)).split)


推荐阅读