gpt4 book ai didi

Python 模块的对象不可调用

转载 作者:行者123 更新时间:2023-12-05 08:14:41 25 4
gpt4 key购买 nike

这是一个 python 菜鸟问题...文件结构是这样的

./part/__init__.py
./part/Part.py
./__init__.py
./testCreation.py

当运行 python3 testCreation.py 我得到一个

part = Part() TypeError: 'module' object is not callable

没有提示进口。所以我想知道问题是什么!?

同样来自 Java,如果组织 python 类只在带有子路径的包中或在模块中更好(省略 init.py 文件),有人可以评论吗?

最佳答案

在 Python 中,您需要区分模块名称类名称。在您的情况下,您有一个名为 Part 的模块和(推测的)该模块中名为 Part 的类。您现在可以通过以两种可能的方式导入此类来在另一个模块中使用它:

  1. 导入整个模块:

     import Part

    part = Part.Part() # <- The first Part is the module "Part", the second the class
  2. 仅将该模块中的类导入您的本地(模块)范围:

     from Part import Part
    part = Part() # <- Here, "Part" refers to the class "Part"

请注意,按照惯例,在 Python 中,模块通常以小写字母命名(例如 part),只有类以 UpperCamelCase 命名。这也在 PEP8 中定义,Python 的标准化编码风格指南。

关于Python 模块的对象不可调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34384205/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com