Я печатаю python
в окне терминала. Я получаю Python 2.7, а не Python 3.5. Согласно документации, Python 3.5 должен быть загружен предварительно.
Я печатаю python
в окне терминала. Я получаю Python 2.7, а не Python 3.5. Согласно документации, Python 3.5 должен быть загружен предварительно.
Ответы:
Я не знаю, какие «документы» вы читаете, и что они говорят, но /usr/bin/python
это просто символическая ссылка на версию Python по умолчанию, в данном случае 2.7, которая является результатом простой печати python
на терминале. Это результат PEP 394, который определяет, что
- на данный момент все дистрибутивы должны гарантировать, что это
python
относится к той же цели, что иpython2
.
type python
и file /usr/bin/python
подтвердит это.
Причиной такого расположения, отличного от соглашения, является то, что исходный пакет python-defaults в Xenial является версией 2.7.11 , поэтому символическая ссылка python указывает на эту версию.
Чтобы использовать Python 3, вы должны быть явным и вводить python3
в командной строке, что рекомендуется, если вам нужна конкретная версия, это также можно сделать с помощью Python 2, набрав python2
. Ubuntu включает в себя обе версии Python 2 и 3 по умолчанию во всех текущих версиях.
Есть планы перенести все на Python 3 и пометить его как значение по умолчанию.
Чтобы получить Python 3.5 REPL или запустить совместимый скрипт, введите python3
. Это необходимо для обеспечения совместимости со всем устаревшим Python 2.x (который всегда был и останется связанным с python
).
Тир может найти , python
если вы создали .desktop
файл для него (в ~/.local/share/applications/
), чтобы открыть терминал и запустить REPL, например. Для Python не существует среды GUI REPL по умолчанию, и нормальный интерфейс предполагает, что пользователь пойдет в терминал.
Говорят о том, что python 3.5 по умолчанию используется для сопровождения портирования всех системных скриптов с python 2.x на python 3.x, но не то, что python 3 заменит Python 2 во всех случаях.
#!/usr/bin/python3
(или #!/usr/bin/python2
) в скриптах, лучше использовать (специально для python), #!/usr/bin/env python3
если вы хотите, чтобы он был удаленно переносимым. По большей части это просто документация, так как во многих случаях она все равно будет вызываться с использованием $ python3 your_pyprogram.py
.
Вы предполагаете, что Python по умолчанию должен быть доступен как python
. Это предположение неверно.
В системе, которая поставляется с «предварительно загруженным» Python 3 и вообще без Python 2, будет только python3
и нет python
.
Код, написанный для Python 3, всегда должен искать вызываемого интерпретатора python3
. Код, написанный для Python 2, будет исторически искать python
.
Может наступить момент времени, возможно, десятилетия спустя, когда почти никто не помнит Python 2, когда, python
возможно, начнут ссылаться python3
. Это было бы чисто для удобства, и может и не должно быть сделано преждевременно, если вообще! Там нет спешки, из-за следующего воздействия:
«Старые» системы не будут знать python2
только о них python
, поэтому имеет смысл продолжать искать код Python 2 python
. Это причина, почему python
следует ссылаться на Python 2 «пока существует код Python 2».
Новый код, написанный для Python 2, если это имеет смысл, может прекрасно выглядеть python
. Он также может искать python2
, если он предназначен для работы только на Python 3, хорошо осведомленных и ухоженных системах (которые должны предлагать такую ссылку).
Преимущество использования кода на Python 2 python2
состоит в том, что он не нуждается в дополнительных прикосновениях, как только python
начинает ссылаться на то python3
, что может никогда не произойти или когда-то python
вообще исчезнет, что может произойти или не произойти. (Это может стать реальностью, если код Python 2 исчезнет после того, как гипотетический Python 4 станет популярным у его интерпретатора python4
. - Потому что позволить ему указывать либо на то, python3
либо на python4
оба, и это может сбить с толку.)
Python доступны как версии 2.x, 3.x. если вы вызываете python, как указано в python 2.x, он загрузит python 2.x
Ниже изображение поможет вам.
python
- от использования <tab>
для запроса автозаполнения, который затем выводит возможные перестановки python*
и возвращает вас в новое приглашение.
apt-cache
, особенно для начинающих пользователей Ubuntu.
Python 3.x должен работать с 16.04 - на самом деле, он точно будет работать. У меня Ubuntu 14.04 и Python 3.4.3 - все, что вам нужно сделать, чтобы проверить его, это ввести текст, python3
и он должен сказать вам, какую версию вы используете.