Я 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-дефолти в 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
для нього файл (in ~/.local/share/applications/
), щоб відкрити термінал і запустити, наприклад, REPL. Для Python не існує середовища інтерфейсу REPL для інтерфейсу GUI, і звичайні очікування інтерфейсу полягають у тому, що користувач перейде до терміналу.
Якщо говорити про 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
інше, або і те, і інше буде заплутаним.)
Доступні обидві версії 2.x, 3.x Python. якщо ви викликаєте 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
і він повинен повідомити, яку версію ви працюєте.