dir(包)没有在python中列出包含模块的内容

时间:2014-05-23 12:54:26

标签: python dir

我的目录结构如下:

的TestCases:

  • __init__.py
  • agent_cases.py#包含许多类,例如:foo,bar。

的TestSuite:

  • __init__.py
  • main.py

main.py,

import TestCases
dir(TestCases.agent_cases)

我希望找到包括foo,bar等类的列表。我收到如下错误:

AttributeError: 'module' object has no attribute 'agent_cases'

同样dir(TestCases)不会返回其下的模块名称。 我错过了什么?请帮忙。

2 个答案:

答案 0 :(得分:2)

您需要在agent_cases中导入__init__.py或在代码中直接导入TestCases.agent_cases

这是因为目录模块中的模块不是自动导入的,您需要明确地执行它,或者记录它以便用户直接导入它们。

答案 1 :(得分:0)

导入包时,不会自动导入子模块。您可以在agent_cases模块中明确导入TestCases.__init__

import agent_cases

如果您希望始终使用包导入模块。