Python 从不同目录/文件夹导入模块的正确语法
如何从.py不在的文件夹中正确导入模块 我正在使用Python 3.8和 我试图在testing.py中加载模块csvread.py 此模块的路径为Python 从不同目录/文件夹导入模块的正确语法,python,Python,如何从.py不在的文件夹中正确导入模块 我正在使用Python 3.8和 我试图在testing.py中加载模块csvread.py 此模块的路径为Modules/csv/csvread.py 命令似乎不是:from botmanager.Modules.csv import csvread 我得到的堆栈跟踪是: Traceback (most recent call last): File "C:/Users/QT/PycharmProjects/botmanager/testing.py
Modules/csv/csvread.py
命令似乎不是:from botmanager.Modules.csv import csvread
我得到的堆栈跟踪是:
Traceback (most recent call last):
File "C:/Users/QT/PycharmProjects/botmanager/testing.py", line 1, in <module>
from botmanager.Modules.csv import csvread
ModuleNotFoundError: No module named 'botmanager'
回溯(最近一次呼叫最后一次):
文件“C:/Users/QT/PycharmProjects/botmanager/testing.py”,第1行,在
从botmanager.Modules.csv导入csvread
ModuleNotFoundError:没有名为“botmanager”的模块
项目树:要导航到子文件夹中的脚本,请执行以下操作:
import Modules.csv.csvread as csvread
您可以共享项目文件夹的目录树吗。在linux上尝试
tree
command@Mayank现在,我把它重新组织成这样。该图像有效吗?您想在testing.py
中导入csvread.py
?还请使用python版本更新您的问题,您尝试导入的方法和堆栈跟踪出现错误。这将有助于我们识别错误。看看这篇文章,点击这里。你能解释一下为什么这样做,而不需要做这里列出的事情吗?当您从botmanager.Modules.csv导入csvread执行类似于的操作时,您正在尝试导入一个包/模块。。它无法加载可能有多种原因。。路径不可访问,或者它不是python包/模块。。当您将Modules.csv.csvread作为csvread导入时
您是在将文件作为脚本导入。@Mayank我明白了。从botmanager.Modules.csv导入csvread是导入模块的正确方法吗?它的python方式。只需将casvread.py设置为适当的模块。尝试将\uuuu init\uuuu.py
添加到父文件夹。如果botmanager.Modules.csv
可访问或不可访问,也请检查sys.path。从x导入y
语句必须导入x,然后从中获取y。您无法导入botmanager.Modules.csv,因为它不是一个包,只是一个文件夹。您可以通过在csv文件夹中添加一个空的\uuuu init\uuuuu.py
文件,将其转换为一个包。