как изменить версию Python по умолчанию?



Я установил python 3.2 в моем mac. После того, как я бегу / Applications / Python 3.2 / Обновить Профиль Оболочки.команда, это сбивает с толку, что когда я типа python-V в терминале он говорит, что Python 2.6.1, Как я могу изменить версию Python по умолчанию?

5863   8  

8 ответов:

Это, вероятно, желательно для обратной совместимости.

Python3 нарушает обратную совместимость, и программы, вызывающие "python", вероятно, ожидают python2. Вероятно, у вас есть много программ и скриптов, о которых вы даже не знаете, которые ожидают python=python2, и изменение этого нарушит эти программы и скрипты.

ответ, который вы ищете является вы не должны изменить это.

вы могли бы, однако, сделать заказ псевдоним в вашей оболочке. То, как вы это делаете, зависит от оболочки, но, возможно, вы могли бы сделать alias py=python3

если вы путаете о том, как запустить последнюю версию python, это по крайней мере случай на Linux, что python3 оставляет python2 установка интактных (из-за вышеуказанных причин совместимости); таким образом, вы можете начать python3 с

на Mac OS X с помощью python.org установщик как вы, по-видимому, есть, вам нужно вызвать Python 3 с python3, а не python. В настоящее время это зарезервировано для версий Python 2. Вы также можете использовать python3.2 чтобы специально вызвать эту версию.

$ which python
/usr/bin/python
$ which python3
/Library/Frameworks/Python.framework/Versions/3.2/bin/python3
$ cd /Library/Frameworks/Python.framework/Versions/3.2/bin/
$ ls -l
total 384
lrwxr-xr-x  1 root  admin      8 Apr 28 15:51 2to3@ -> 2to3-3.2
-rwxrwxr-x  1 root  admin    140 Feb 20 11:14 2to3-3.2*
lrwxr-xr-x  1 root  admin      7 Apr 28 15:51 idle3@ -> idle3.2
-rwxrwxr-x  1 root  admin    138 Feb 20 11:14 idle3.2*
lrwxr-xr-x  1 root  admin      8 Apr 28 15:51 pydoc3@ -> pydoc3.2
-rwxrwxr-x  1 root  admin    123 Feb 20 11:14 pydoc3.2*
-rwxrwxr-x  2 root  admin  25624 Feb 20 11:14 python3*
lrwxr-xr-x  1 root  admin     12 Apr 28 15:51 python3-32@ -> python3.2-32
lrwxr-xr-x  1 root  admin     16 Apr 28 15:51 python3-config@ -> python3.2-config
-rwxrwxr-x  2 root  admin  25624 Feb 20 11:14 python3.2*
-rwxrwxr-x  1 root  admin  13964 Feb 20 11:14 python3.2-32*
lrwxr-xr-x  1 root  admin     17 Apr 28 15:51 python3.2-config@ -> python3.2m-config
-rwxrwxr-x  1 root  admin  25784 Feb 20 11:14 python3.2m*
-rwxrwxr-x  1 root  admin   1865 Feb 20 11:14 python3.2m-config*
lrwxr-xr-x  1 root  admin     10 Apr 28 15:51 pythonw3@ -> pythonw3.2
lrwxr-xr-x  1 root  admin     13 Apr 28 15:51 pythonw3-32@ -> pythonw3.2-32
-rwxrwxr-x  1 root  admin  25624 Feb 20 11:14 pythonw3.2*
-rwxrwxr-x  1 root  admin  13964 Feb 20 11:14 pythonw3.2-32*

если вы также установили Python 2 из python.org, он будет иметь аналогичный каталог bin framework без перекрывающихся имен файлов (за исключением 2to3).

$ open /Applications/Python\ 2.7/Update\ Shell\ Profile.command
$ sh -l
$ echo $PATH
/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/3.2/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
$ which python3
/Library/Frameworks/Python.framework/Versions/3.2/bin/python3
$ which python
/Library/Frameworks/Python.framework/Versions/2.7/bin/python
$ cd /Library/Frameworks/Python.framework/Versions/2.7/bin
$ ls -l
total 288
-rwxrwxr-x  1 root  admin    150 Jul  3  2010 2to3*
lrwxr-x---  1 root  admin      7 Nov  8 23:14 idle@ -> idle2.7
-rwxrwxr-x  1 root  admin    138 Jul  3  2010 idle2.7*
lrwxr-x---  1 root  admin      8 Nov  8 23:14 pydoc@ -> pydoc2.7
-rwxrwxr-x  1 root  admin    123 Jul  3  2010 pydoc2.7*
lrwxr-x---  1 root  admin      9 Nov  8 23:14 python@ -> python2.7
lrwxr-x---  1 root  admin     16 Nov  8 23:14 python-config@ -> python2.7-config
-rwxrwxr-x  1 root  admin  33764 Jul  3  2010 python2.7*
-rwxrwxr-x  1 root  admin   1663 Jul  3  2010 python2.7-config*
lrwxr-x---  1 root  admin     10 Nov  8 23:14 pythonw@ -> pythonw2.7
-rwxrwxr-x  1 root  admin  33764 Jul  3  2010 pythonw2.7*
lrwxr-x---  1 root  admin     11 Nov  8 23:14 smtpd.py@ -> smtpd2.7.py
-rwxrwxr-x  1 root  admin  18272 Jul  3  2010 smtpd2.7.py*

старый вопрос, но как вариант:

virtualenv --python=python3.5 .venv
source .venv/bin/activate

измените Python "по умолчанию", поставив его впереди системного Python на вашем пути, например:

export PATH=/usr/local/bin:$PATH

проверьте расположение python 3

$ which python3
/usr/local/bin/python3

написать alias в файл

vi ~/.bash_profile  
alias python='/usr/local/bin/python3'

перезагрузить файл

source ~/.bash_profile

подтвердите команду python

$ python --version
Python 3.6.5

Я использую OS X 10.7.5 и Python 3.4.2. Если вы наберете python3 и то, что вы хотите запустить, будет запускать его с помощью python 3. Например pyhton3 test001.py. Это запустило тестовую программу, которую я сделал под названием test001. Надеюсь, это поможет.

переход к:

Мой Компьютер -> Свойства -> Дополнительно -> Переменные Среды -> Системные Переменные

предположим, что вы уже добавили python 2.7 в переменную path и хотите изменить путь по умолчанию на python 3.x

затем добавьте путь python3.5.папку X перед вместо python2.7 путь.

открыть cmd: введите "python -- version"

версия python будет изменена на python 3.5.x

согласно быстрому поиску google, это обновление применяется только к текущей оболочке, которую вы открыли. Вероятно, это можно исправить, набрав python3, поскольку mac и linux достаточно похожи, чтобы такие вещи совпадали. ссылка на результат поиска google.

кроме того, как заявил ninjagecko, большинство программ не были обновлены до 3.x еще, так что по умолчанию python как 3.x сломает многие скрипты python, используемые в приложениях.

Comments

    Ничего не найдено.