Все началось с установки новой версии python, 2.7.5. Я получаю эту ошибку, когда WSGI работает wsgi.py файл моего Джанго:Недопустимый синтаксис с условными выражениями
[Tue Sep 03 23:25:42 2013] [error] [client XXX.XXX.XXX.XXX] mod_wsgi (pid=4710): Target WSGI script '/var/www/empirik/data/www/mysite.com/my_project/wsgi.py' cannot be loaded as Python module.
[Tue Sep 03 23:25:42 2013] [error] [client XXX.XXX.XXX.XXX] mod_wsgi (pid=4710): Exception occurred processing WSGI script '/var/www/empirik/data/www/mysite.com/my_project/wsgi.py'.
[Tue Sep 03 23:25:42 2013] [error] Traceback (most recent call last):
[Tue Sep 03 23:25:42 2013] [error] File "/var/www/empirik/data/www/mysite.com/my_project/wsgi.py", line 22, in ?
[Tue Sep 03 23:25:42 2013] [error] import os
[Tue Sep 03 23:25:42 2013] [error] File "/home/envs/my_project/lib/python2.7/os.py", line 49, in ?
[Tue Sep 03 23:25:42 2013] [error] import posixpath as path
[Tue Sep 03 23:25:42 2013] [error] File "/home/envs/my_project/lib/python2.7/posixpath.py", line 324
[Tue Sep 03 23:25:42 2013] [error] slash, dot = (u'/', u'.') if isinstance(path, _unicode) else ('/', '.')
[Tue Sep 03 23:25:42 2013] [error] ^
[Tue Sep 03 23:25:42 2013] [error] SyntaxError: invalid syntax
я использую virtualenv и не могу понять, почему это происходит. У меня также установлен python 2.4.3 на этом компьютере, но он даже не связан с псевдонимом «python», и в моем virtualenv определенно есть python 2.7.5.
UPDATE: Хорошо, я поднял исключение в моем wsgi.py увидеть sys.path, который он использует, и это python2.4:
['/home/envs/my_env/lib/python24.zip', '/home/envs/my_env/lib/python2.4/', '/home/envs/my_env/lib/python2.4/plat-linux2', '/home/envs/my_env/lib/python2.4/lib-tk', '/home/envs/my_env/lib/python2.4/lib-dynload']
Я не понимаю, как и почему я могу изменить его на python2.7.
Вы можете напечатать источник, где эта ошибка происходит из? Похоже на синтаксическую ошибку для меня, как указано в сообщении об ошибке. –
Какая строка, которая * предшествует * этому? Вы, скорее всего, забыли закрыть скобки, скобки или скобки где-то раньше. –
Попробуйте сделать 'collections.Counter', просто чтобы убедиться, что это действительно 2.7.5. – user2357112