如何在共享文件夹中导入Python模块?

0 投票
6 回答
3753 浏览
提问于 2025-04-15 13:14

我在一台Windows电脑的共享文件夹里有一些Python模块。

这个文件的路径是\mtl12366150\test\mymodule.py。

用os.path.exists检查后,发现这个路径是有效的。

我把文件夹\mtl12366150\test添加到了sys.path里(而且os.path.exists也告诉我这个路径是有效的)。

但是当我尝试导入mymodule时,出现了一个错误,提示这个模块不存在。

有没有办法导入位于共享路径的模块呢?

6 个回答

0

要导入一个Python项目,文件夹上面每一层都需要有一个__init__.py文件,这样才能证明这个文件夹是一个有效的Python包。

这些__init__.py文件可以是空的,它们只是用来表示文件夹的结构。

\mtl12366150
  __init__.py
  \test
    __init__.py
      \mymodule.py
1

你说os.path.exists()显示路径存在,但你确定你把反斜杠\处理好了吗?试试这个:

sys.path.append('\\mtl12366150\\tes')
1

你是不是忘了用原始字符串,或者在你的 sys.path 组件中把反斜杠转义了?记住,"\t" 是一个制表符,而 r"\t" 或者 "\\t" 是一个反斜杠后面跟着一个制表符。

在大多数情况下,使用正斜杠比反斜杠更好,即使是在 Windows 的路径中,绝大多数 Windows 的 API 也能很好地接受正斜杠。否则,记得要小心使用原始字符串哦!

[在简单的 Python 模块的目录中,不需要添加 __init__.py 文件]

撰写回答