Python3 Imports问题

时间:2018-01-10 13:12:55

标签: python python-3.x ubuntu-16.04

所以......我正在尝试自学Python。

在这种情况下,我试图建立一些我似乎对......没有任何线索的东西。

我有一个“workingdir”结构,例如:

/
-- classes/
-- -- install
-- myfile

myfile我只是尝试使用以下方法“导入”文件installimport classes.install

哪个失败了:ImportError: No module named 'classes.install'

我也尝试了以下内容,所有内容都以相同的方式结束,但错误相同:

import .classes.install

sys.path.append(os.path.join(os.path.dirname(__file__), '..'))
import classes.install

除了将一个空的__init__.py文件放在classes目录

文件install只包含:

class gyo_install():

    inst = False

    # check if we have everything we need installed.
    def __init__():
        print("Hello World")

我做错了什么?我搜索,搜索和搜索,我看到的所有内容都指向了我尝试过的相同解决方案,而且没有一个能够正常工作。

2 个答案:

答案 0 :(得分:2)

Python在导入模块时会查找扩展名为.py的文件。因此,只有命令import myfile才能识别名为myfile的文件。确保解释器找到模块的pythonic方法是确保它具有.py扩展名。将myfile重命名为myfile.py并安装到install.py,然后将import命令更改为

import classes.install

应该解决问题。

答案 1 :(得分:2)

在安装目录中创建__init__.py

说明:您可以从当前目录中的文件或包中导入。包是一个内部有__init__.py的目录。实际上,一个包只能包含这个文件。

您可以阅读the documentation了解更多信息。