Python 3.6 не используется по умолчанию при запуске скрипта - PullRequest
0 голосов
/ 04 июля 2018

Я установил переменные среды так, чтобы python 3.6 была версией, которая запускается, когда я использую команду python в терминале, но когда я запускаю скрипт python из терминала, он использует python 2.7.

Я включил в путь папку MyScripts, чтобы я мог запускать эти сценарии непосредственно из терминала без указания пути.

Запуск только python показывает Python 3.6.4

image python ">

Но выполнение скрипта показывает 2.7.14. Это скрипт v27.py

import sys
print(sys.version)
print(sys.executable)

И это вывод

output from v27.py

Ответы [ 2 ]

0 голосов
/ 04 июля 2018

Поскольку вы запускаете Python Script (как исполняемый файл) без указания python в командной строке, он не будет использовать путь python, заданный в Переменные среды . Вместо этого окна будут запускать программу по умолчанию, связанную с этим расширением. Соответствующую программу можно найти в Панель управления \ Все элементы панели управления \ Программы по умолчанию \ Установить ассоциации

Либо вы можете перейти в ControlPanel, чтобы изменить программу по умолчанию, либо выполнить команду ниже, указанную в cmd (для этого требуется повышенное разрешение)

C:\> assoc .py=Python
C:\> ftype Python="C:\Users\asleb\AppData\Local\Programs\Python\Python36-32\python.exe" "%1" %*

Кроме того, если вы хотите работать без расширения (например, v27 вместо v27.py), вам нужно добавить .py в переменную среды PATHEXT.

0 голосов
/ 04 июля 2018

Большинство систем ОС используют python2.7 в качестве python по умолчанию. В зависимости от ваших настроек вы должны позвонить python3 или /path/to/python3exacutable/python, чтобы вызвать нужную версию.

Если ваш проект это позволяет, рассмотрите anaconda как удобное решение для контроля версий Python.

...