python - 当我尝试导入当前工作目录中的模块时引发 ModuleNotFoundError

标签 python windows network-drive

我在网络驱动器上安装了 Python。我用了pushd命令进入同一网络驱动器上我的项目文件夹。我在那个文件夹中打开 python。我尝试导入该文件夹中的模块。一个 ModuleNotFoundError提出:

C:\users\myprofile>pushd \\network\drive\my\directory\my-program
U:\my\directory\my-program>"\\network\drive\Python\installations\python-3.8.3rc1-embed-win32\python.exe"
Python 3.8.3rc1 (tags/v3.8.3rc1:802eb67, Apr 29 2020, 21:21:45) [MSC v.1925 32 bit (Intel)] on win32
>>> import os
>>> import dict2obj
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'dict2obj'
>>> os.listdir()
['config.yml', 'dict2obj.py', 'files', 'main.py', 'start.bat', 'templates', '__pycache__']

我使用了os.listdir()查看我当前的工作目录中有哪些文件。

我不明白这个问题与在网络驱动器上有何关系。

更新:即使我执行以下操作,问题仍然存在:

import os
os.chdir("\\\\network\\drive\\my\\directory\\my-program")

编辑:请不要将此标记为 Python can't find module in the same folder 的副本.它不是。在那篇文章中,与这个问题不同,OP 没有确认他们的工作目录是正确的。

编辑:这是 sys.path 中的所有内容:
\\network\drive\Python\installations\python-3.8.3rc1-embed-win32\python38.zip
\\network\drive\Python\modules\site-packages
\\network\drive\Python\modules\custom-modules
\\network\drive\Python\installations\python-3.8.3rc1-embed-win32

最佳答案

我的解决方案是删除此文件:

python39._pth
这允许 Pip 工作,也允许 import从同一个目录。
或者你可以得到这个:
https://nuget.org/packages/python
单击“下载包”,您可以像解压缩 Zip 文件一样进行解压。

关于python - 当我尝试导入当前工作目录中的模块时引发 ModuleNotFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61807064/

相关文章:

command-line - 为什么我无法使用 rclone 访问我的 NAS 驱动器?

python - 如何使用 python imaplib.IMAP4.search() 搜索特定的电子邮件

Python:模拟我正在测试的模块正在使用的模块

python - 如何将单词分配给列表中的值?

windows - Visual Studio代码终端,如何以管理员权限运行命令?

bash - 使用 Cygwin 后无法删除 Windows 7 网络驱动器中的文件夹

python - 有没有办法在 Keras Conv2D() 函数中设置音频数据输入矩阵的总文件数?

windows - 如何防止 .NET 服务在等待相关服务时超时

Windows + Qt 以及如何在没有 OpenCV 的情况下捕获网络摄像头提要

file - 网盘的 Camel 文件组件