设置python路径

2024-04-19 21:01:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个Django应用程序,每当我试图运行我的代码时都会遇到一个错误:

Error: No module named django_openid

让我退一步告诉你我是怎么做到的:

  1. 我格式化了我的计算机,并根据requirements.txt文件夹中的设置,完全重新安装了我的项目所需的所有内容,包括virtualenv和所有依赖包(除了Django)
  2. 我试着做了python manage.py syncdb,得到了错误

我在谷歌上搜索了这个问题,很多人说这可能是一个路径问题。

不过,我对如何改变路径变量以及它们的确切含义感到困惑。我找到了一些文档,但作为一个有点老套的人,这有点超出我的想象。

所以我的问题是:

  1. 它们的目的到底是什么——它们是基于Python版本的基于系统的级别,还是依赖于项目?
  2. 我怎样才能知道我的当前设置是什么?
  3. 我怎样才能改变它们(例如,这是哪里,他们说的档案文件,我能用文本编辑器吗)

你的任何输入都会很好,因为这一个困扰着我,我只想回去写代码:-)


Tags: 项目djangono代码路径txt应用程序计算机
2条回答

你真的需要改变路径吗?最好先考虑一下你的理由。如果您只打算在服务器上运行一个应用程序,或者您不关心使用潜在不必要的包污染系统包目录,那么将所有内容都放在主系统站点包或dist包目录中。否则,使用virtualenv。

系统级包目录始终位于路径上。Virtualenv将在激活时将其站点包目录添加到路径,Django将在激活时将项目目录添加到路径。不需要在这条道路上添加任何东西,实际上这是你在实践中不应该真正担心的事情。

path只是文件系统中python将在其中搜索要导入的模块的位置。例如,当您运行import somemodule时,Python将在路径(sys.path变量)中包含的所有位置执行对somemodule的搜索。

您应该检查sys模块中的path属性:

import sys
print sys.path

它只是一个常规列表,因此您可以从中附加/删除元素:

sys.path.append('/path/to/some/module/folder/')

如果要为启动的每个python会话更改路径,应创建一个要在启动时加载的文件,执行以下操作:

  1. 创建一个PYTHONSTARTUP环境变量并将其设置为启动文件。E、 g.:PYTHONSTARTUP=/home/user/.pythonrc(在unix外壳中)
  2. 编辑启动文件,使其包含在加载python时要自动执行的命令

一个.pythonrc的例子可以是:

import sys
sys.path.append('/path/to/some/folder/')

相关问题 更多 >