Я 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і він повинен повідомити, яку версію ви працюєте.