python:如何/在哪里放置一个简单的库在我电脑上的一个著名位置

4 投票
7 回答
8723 浏览
提问于 2025-04-15 22:48

我需要把一个Python脚本放在我电脑的某个地方,这样在另一个文件里我就可以使用它。请问我该怎么做,放在哪里比较好?还有,Python的文档里哪里可以找到相关的学习内容?我还是个初学者,平时也不怎么用Python。


库文件:MyLib.py 放在一个大家都知道的地方

def myfunc():
   ....

另一个文件 SourceFile.py 放在其他地方,不需要知道 MyLib.py 在哪里:

something = MyLib.myfunc()

7 个回答

3

没有人提到过在site-packages文件夹里使用.pth文件来隐藏文件的位置。

4

一般来说,Python教程中的模块部分是初学者了解这个主题的好地方。它讲解了如何编写自己的模块以及应该把它们放在哪里,不过我在这里简单总结一下你的问题:

你的Python安装里有一个叫做site-packages的文件夹;你放在这个文件夹里的任何Python文件都可以在你写的任何脚本中使用。比如,如果你把文件MyLib.py放在site-packages文件夹里,那么在你的脚本中你可以这样写:

import MyLib
something = MyLib.myfunc()

如果你不确定Python安装在哪里,可以参考Stack Overflow上的问题我该如何找到我的Python site-packages目录的位置,这会对你有帮助。

另外,你还可以修改sys.path,这是一个目录列表,Python在使用import语句时会在这些目录中查找库。你的site-packages目录已经在这个列表里了,但你也可以自己添加(或删除)条目。比如,如果你想把MyLib.py文件放在/usr/local/pythonModules,你可以这样写:

import sys
sys.path.append("/usr/local/pythonModules")
import MyLib
something = MyLib.myfunc()

最后,你还可以使用PYTHONPATH环境变量来指定MyLib.py所在的目录。

不过,我建议你还是把MyLib.py文件放在site-packages目录里,就像上面说的那样。

8

选项 1:

把你的文件放在:

<你的Python安装路径>/Lib/site-packages/myfile.py

在你的代码中加上这个:

import myfile

优点:简单

缺点:会让site-packages变得杂乱

选项 2:

把你的文件放在:

/Lib/site-packages/mypackage/myfile.py

创建一个空的文本文件,命名为:

<你的Python安装路径>/Lib/site-packages/mypackage/__init__.py

在你的代码中加上这个:

from mypackage import myfile

优点:可以减少site-packages的杂乱,把你的文件集中在一个目录里

缺点:稍微多一点工作;site-packages里还是会有些杂乱。对于稳定的项目来说这没什么问题,但对于开发工作来说可能不太合适,如果Python安装在共享驱动上,这种方法可能就行不通了。

选项 3:

把你的文件放在你喜欢的任何目录里

把那个目录添加到PYTHONPATH环境变量中

然后像选项1或选项2那样继续,只需把你刚创建的目录替换为<你的Python安装路径>/Lib/site-packages/

优点:可以把开发代码放在site-packages目录之外

缺点:设置起来稍微复杂一点

这是我通常在开发工作中使用的方法

撰写回答