我是这方面的新手,我已经开始学习Python,但是我有一些我无法理解的问题,
- PYTHONPATH 到底是什么(在 Ubuntu 上)?是文件夹吗?
- Python 是在 Ubuntu 上默认提供的,还是必须显式安装?
- 所有模块所在的文件夹在哪里(我有很多文件夹
python_
)? - 如果我希望一个新模块在我编程时工作(例如 pyopengl),我应该去哪里介绍我下载的文件夹中的所有文件夹?
- 从 PYTHONPATH 问题回来,如何配置 PYTHONPATH 以开始处理我的新模块?
我是这方面的新手,我已经开始学习Python,但是我有一些我无法理解的问题,
python_
)?1)PYTHONPATH
是一个环境变量,您可以设置它以添加其他目录,python 将在其中查找模块和包。例如:
# make python look in the foo subdirectory of your home directory for
# modules and packages
export PYTHONPATH=${PYTHONPATH}:${HOME}/foo
这里我使用sh
语法。对于其他 shell(例如csh
, tcsh
),语法会略有不同。要使其永久化,请在 shell 的 init 文件(通常为 ~/.bashrc)中设置变量。
2) Ubuntu 已经安装了 python。安装其他(独立)python 版本可能是有原因的,但我发现这很少需要。
3)您的模块所在的文件夹取决于PYTHONPATH
安装python时设置目录的位置。大多数情况下,安装的东西你不应该关心它在哪里——Python知道它在哪里,它可以找到模块。有点像发出命令ls
——ls
住在哪里? /usr/bin
? /bin
? 99% 的时间,你不需要关心——只要使用ls
它并且很高兴它存在于你PATH
的某个地方,这样 shell 就可以找到它。
4)我不确定我是否理解这个问题。3rd 方模块通常带有安装说明。如果您按照说明进行操作,python 应该能够找到该模块,您不必关心它的安装位置。
5) 配置PYTHONPATH
为包含您的模块所在的目录,python 将能够找到您的模块。
PYTHONPATH
是一个环境变量/usr/lib/python2.7
在 Ubuntu 上PYTHONPATH
显式设置如果您查看pyopengl的说明,您会发现它们与第 4 点和第 5 点一致。
PYTHONPATH
是一个环境变量,这些内容被添加到sys.path
Python 查找模块的位置。您可以将其设置为您喜欢的任何内容。
但是,不要乱来PYTHONPATH
。很多时候,你做错了,从长远来看只会给你带来麻烦。例如,虚拟环境可能会做一些奇怪的事情……
我建议您学习如何正确打包 Python 模块,也许可以使用这个简单的设置。如果您特别懒惰,可以使用cookiecutter为您完成所有艰苦的工作。