2016-03-14 4 views
2

Итак, у меня есть код, он отлично работает в моей среде IDE (PyCharm), поскольку он использует правильный интерпретатор (Anaconda2).Устранение неполадок с интерпретатором Python в Windows

Я могу запустить программу из CMD, набрав python myProgram.py, и это использует правильный интерпретатор, но мне нужно, чтобы программа запускалась с двойным щелчком, но когда я делаю это, она дает ошибку и немедленно отключается.

The error when running

Это почти определенно вниз к нему с помощью неправильного переводчика, даже когда я правой кнопкой мыши и выберите «Открыть с помощью» и выберите тот же python.exe, что мой IDE использует это дает ту же ошибку.

Мои окна Переменные среды включают Anaconda как путь, как показано here

Я попытался:

  • Что было предложено в this post, добавив #!/usr/bin/env python, но это не сработало.
  • Как упоминалось ранее, то, что упоминалось в this post, не напрасно.

Как я могу убедиться, что моя программа всегда запускается с использованием конкретного интерпретатора? В частности, при двойном нажатии, чтобы запустить его?

Благодаря

+0

Не размещайте текст как изображение, но копируйте его. –

+1

Дубликат http://superuser.com/questions/310335/how-do-i-change-the-file-association-to-a-program-with-the-same-name-in-windows –

+1

Убедитесь, что 'Python.File' настроен на запуск правильного python.exe, например '' C: \ Python27 \ python.exe ""% 1 "% *', или если Python 3 установлен с новой программой запуска, это должно быть '' C: \ Windows \ py.exe ""% 1 "% * 'если вы установили пусковую установку для всех пользователей. – eryksun

ответ

1

Причина #!/usr/bin/env python (это называется притон) не работает в том, что это особенность Linux оболочки, баш (оболочка это программа, которая используется для ввода команд, как cmd.exe на окнах)

Что касается ответа, попробуйте посмотреть в конфигурациях сборки/запуска вашей среды разработки и посмотреть, какая команда выполняется оттуда. Кроме того, вы должны добавить каталог anaconda в системный путь, а не в пользовательский, и я думаю, что путь требует капитала P

+0

[В настоящее время это особенность ядра Linux.] (Https: //en.wikipedia.org/wiki/Shebang_% 28Unix% 29) –

+0

Я добавил каталог Anaconda в системный путь. Мои настройки запуска выглядят как [это] (http://puu.sh/nGoPq/35fed1ee4c.png). Все, что я могу собрать из этого, это то, что он использует интерпретатор, я хочу, чтобы он ... – McMitch

+0

Shebangs работают, если Python 3 установлен, а ассоциация .py настроена на использование пусковой установки py.exe, которая обрабатывает виртуальные пути shebang таких как '/ usr/bin/python' и'/usr/bin/env python' (для поиска 'PATH' для python.exe). Эти виртуальные пути поддерживаются для запуска межплатформенных сценариев в Windows и по умолчанию используют последнюю установленную версию Python 2, поскольку «python» обычно означает Python 2 в Unix-системах. – eryksun

1

Если ваш интерпретатор python назван тем же самым в вашей установке anaconda, что и ваша первоначальная установка python2.7, у вас будут проблемы. Попробуйте переименовать один из них. Как вызов python в вашей установке python2.7 python2.

Редактировать Чтобы ответ не был длинным, я делаю это редактированием.

Если вы запустите его из cmd, вы можете указать интерпретатор.

<interpreter-name> yourfile.py 

Однако при настройке программы по умолчанию для запуска файлов python это будет одинаково для всех. Таким образом, вам нужно указать с помощью cmd, если вы хотите запустить его с помощью другого интерпретатора.

+0

Этот полу работает, когда я дважды щелкаю его, он просит меня выбрать программу для ее запуска с каждым разом (я не могу выбрать ее по умолчанию), тогда она работает. Как я могу по умолчанию использовать этот интерпретатор? – McMitch

Смежные вопросы