我对运行我的django应用程序的情况感到有点困惑。当我使用命令python manage.py runserver
时,我没有从服务器获得适当的响应。但是,当我使用python2.6 manage.py runserver
时,服务器实际运行。
有人可以帮助我解决这个困惑,并建议我如何简化这个问题?理想情况下,我不想要不同版本的python,只希望能够输入python manage.py runserver
答案 0 :(得分:2)
是的,您可以将多个版本的Python并排放置在您的计算机上。
听起来主机上的python
符号链接到python2.6
以外的版本。您可以通过运行以下来找到此版本:
python --version
...或...
python -V
......如果那不起作用。
设置默认的Python版本取决于您首先安装Python的方式。
对于Mac OS X,请参阅How can I change the default Python version on Snow Leopard?
答案 1 :(得分:2)
是。这很常见。您可以使用which
找到可执行文件的位置,并使用ls
解析符号链接。
$ ls -l `which python` lrwxrwxrwx 1 root root 9 Jul 13 18:50 /usr/bin/python -> python2.6 $ ls -l `which python3` lrwxrwxrwx 1 root root 9 Jul 27 22:24 /usr/bin/python3 -> python3.1
在Debian和其他一些系统上,您可能需要解析多个符号链接。
$ ls -l `which nc` lrwxrwxrwx 1 root root 20 Oct 7 15:16 /bin/nc -> /etc/alternatives/nc $ ls -l /etc/alternatives/nc lrwxrwxrwx 1 root root 15 Oct 7 15:16 /etc/alternatives/nc -> /bin/nc.openbsd
如果您只想输入python
并获得所需的版本,请创建一个别名。在.bashrc
文件中添加一行(或者保留这些行的任何地方):
alias python=python2.6
请注意,这不会影响脚本:如果在脚本中运行“python”,它将获得旧版本,而不是别名。别名仅供交互使用。
答案 2 :(得分:2)
是的,可能有两个版本的python。我发现使python
执行python2.6
(不破坏其他任何人的其他版本)的最简单方法是使用别名。为此,只需编辑以下内容并将其添加到~/.profile
文件中:
alias python=/path/to/your/python2.6
注销并重新登录,当您运行python
时,它应该执行正确的二进制文件。如果您希望还原,只需从~/.profile
删除此行即可。