【问题标题】:Can't import any functions from module named 'code'无法从名为“代码”的模块中导入任何函数
【发布时间】:2017-09-28 18:39:09
【问题描述】:

我创建了一个名为 code:code.py 的模块并编写了一个简单的函数:

def main():
    print("simple function")

我尝试将这个文件放到站点包中,当我运行时:

import code
code.main()

我收到以下错误:AttributeError: module 'code' has no attribute 'main'。

有趣的是,如果我将模块重命名为 foo.py,这段代码就可以正常工作:

import foo
foo.main()

代码不是保留字,为什么我不能命名模块代码?

【问题讨论】:

    标签: python python-import python-module


    【解决方案1】:

    code 已经是一个 Python 模块,这是要导入的,而不是你的文件

    【讨论】:

    • 我实际上不知道这个模块的存在。原来python module index 中有一对我可能会在不知情的情况下使用。
    • 非常好的指出 python 模块索引。那里有一堆非常“常见”的名字,我很可能会在不注意的情况下使用它们。这很可能是我们应该始终在包中安装模块以避免名称冲突的原因。
    猜你喜欢
    • 1970-01-01
    • 2021-09-27
    • 1970-01-01
    • 2013-05-05
    • 1970-01-01
    • 2021-05-15
    • 2017-10-28
    • 1970-01-01
    • 2014-05-10
    相关资源
    最近更新 更多