无法导入Python文件中的类之一

问题描述 投票:0回答:1

我无法从文件导入类,即使我可以从同一文件导入其他类。 我的文件结构是

maindir\
- test.py
- neat\
  - __init__.py
  - reporting.py

reporting.py 文件看起来像这样

class A:
 pass

class B(A):
 pass

class C(A);
 pass

__ init__.py 看起来像这样

from neat.reporting import B, C # But C can't be found

当然在 test.py 中我可以使用 B 但不能使用 C

import neat
b = B() # works
c = C() # throws class not found

我尝试重命名该类,将其移动到文件中的不同位置,删除 B 类,重新启动程序,在同一文件中使用 * 导入并使用 C 类(有效)。

改变错误的唯一方法是将 C 移动到一个新文件并导入它,但这会导致另一个错误,然后在运行时找不到该文件。

python import
1个回答
0
投票

我不确定这是否是问题所在,但你的 C 类有一个拼写错误:

class C(A):
    pass

而不是

class C(A);
    pass
© www.soinside.com 2019 - 2024. All rights reserved.