Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在同一目录中导入类_Python_Python 3.x - Fatal编程技术网

Python 在同一目录中导入类

Python 在同一目录中导入类,python,python-3.x,Python,Python 3.x,我有一个名为AsyncDownloaderTest的项目,它与main.py和AsyncDownloader.py位于同一目录中。我刚刚开始学习python,但问题似乎在于导入 main.py from .AsyncDownloader import AsyncDownloader ad = AsyncDownloader() ad.setSourceCSV("https://people.sc.fsu.edu/~jburkardt/data/csv/grades.csv","First na

我有一个名为AsyncDownloaderTest的项目,它与
main.py
AsyncDownloader.py
位于同一目录中。我刚刚开始学习python,但问题似乎在于导入

main.py

from .AsyncDownloader import AsyncDownloader

ad = AsyncDownloader()
ad.setSourceCSV("https://people.sc.fsu.edu/~jburkardt/data/csv/grades.csv","First name")
print(ad.printURLs)
AsyncDownloader.py

import pandas as pd

class AsyncDownloader:

    """Download files asynchronously"""

    __urls = None



    def setSourceCSV(self, source_path, column_name):
        self.source_path = source_path
        self.column_name = column_name
        # TODO Check if path is a valid csv
        # TODO Store the urls found in column in a list
        my_csv = pd.read_csv(source_path, usecols=[column_name], chunksize=10)
        for chunk in my_csv:
            AsyncDownloader.urls += chunk.column_name

    def printURLs(self):
        print(AsyncDownloader.urls)
我得到以下错误


ModuleNotFoundError:没有名为“\uuuu main\uuuuu.AsyncDownloader”的模块__main\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu不是一个包

是否与
异步下载程序.py
在同一目录下?应该这样做

\uuuu init\uuuuuu.py
是一个空文件,表示目录包含包,并使函数和类可从该目录中的
.py
文件导入

您可能也会丢失.AsyncDownloader的
中的前导
。如果愿意,可以将导入更改为绝对导入:

from enclosing_folder.AsyncDownloader import AsyncDownloader

您是否在与
AsyncDownloader.py
相同的目录中有
\uuuuu init\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuupy
?应该这样做

\uuuu init\uuuuuu.py
是一个空文件,表示目录包含包,并使函数和类可从该目录中的
.py
文件导入

您可能也会丢失.AsyncDownloader
中的前导
。如果愿意,可以将导入更改为绝对导入:

from enclosing_folder.AsyncDownloader import AsyncDownloader

我创建了一个名为
\uuuu init\uuuuuuuuuuy.py
的空文件,但它不起作用。据我所知,
\uuuuuu init\uuuuuuuuuuuy.py
是用于模块的,但在这里我只想包含一个classI,我不确定您是否可以以任何其他方式引入类或方法。请查看我的编辑以获得更多选项。太棒了!很高兴听到它有帮助。我创建了一个名为
\uuu init\uuuuuuuuuuuuuuuuuuy.py
的空文件,但它不起作用。据我所知,
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuy.py
是用于模块的,但在这里我只想包含一个Classic,我不确定您是否可以以任何其他方式。请查看我的编辑以获得更多选项。太棒了!很高兴听到这有帮助。