Оновлення до python 3.2


22

Я хочу використовувати нові функції, які надають lrucache, я зараз використовую python 2.6, який не підтримує це,

Який найкращий спосіб перейти на python 3.2? або чи є інший спосіб, що я можу використовувати itertools + functools 3.2 випуску в дистрибутиві python 2.6

Дякую


Може, цей рецепт корисний?
січня

Відповіді:


24

Оскільки багато програм і бібліотек покладаються на Python 2.6 (або python 2.7 в 11.04), а оскільки python 2.x і 3.x несумісні, ви не можете оновити, ви можете встановити python3 лише поряд з python 2.6:

Пітон 3.1

  • На щастя, стабільний випуск Python 3 (3.1.2 на момент написання цього запису) передбачений у сховищах. Просто встановіть пакунок python3-all  .

    Ваш перекладач буде /usr/bin/python3замість /usr/bin/python.

    Тепер ви можете ввести python3свій термінал, коли ви хочете запустити Py3 замість Py2.


Пітон 3.2

  • Ви можете завантажити будь-яку версію джерел python з python.org та запустити

    ./configure
    make
    sudo make altinstall

    Щоб мати можливість скласти джерело python, вам знадобиться кілька пакетів:

    sudo apt-get install build-essential libncursesw5-dev libreadline5-dev libssl-dev libgdbm-dev libc6-dev libsqlite3-dev tk-dev libbz2-dev

    Параметр altinstall встановить іншу версію python поряд із існуючою:

    Має сенс замість завантаження джерел перевіряти найновіший реліз розробки з сховища розробників python щораз так часто:

    svn checkout http://svn.python.org/projects/python/branches/py3k

    Це дасть вам найновішу розробку, нестабільну версію. Ви можете потім cd py3k/виконати описану вище процедуру компіляції.

    Для цього звичайно потрібно встановити svn  .


1
Ця відповідь чудова, я підтримував, але я хотів би більше глибини. Я можу викликати новий Python як "python3.2", що добре, але чи можу я налаштувати так, щоб мої персональні програми використовували цю версію за замовчуванням (наприклад, отримати python3.2 як перший "python" на PATH) при цьому система безпечно використовує python2.6? Я прошу не тому, що мені не подобається вводити "python3.2", а тому, що деякі
Джонатан Хартлі

1
@Tartley Ваш коментар там вирізали, чому ви хочете це робити?
Стефано Палаццо

1
(ой, дякую.) ... але тому, що в деяких інструментах є, наприклад, bash-скрипти, які викликають їх компоненти Python за допомогою "python xxx.py", і вони працюють лише під Python 3.2. Отже, я хочу створити середовище (дійсно, я хочу, щоб це було моїм особистим середовищем за замовчуванням), в якому Python 3.2 (і всі його сценарії, інструменти тощо) є першим на шляху, залишаючи систему Python 2.6 для системи використання (дійсно, за перевагою, я хотів би зняти це з мого особистого шляху, щоб уникнути плутанини щодо того, на якому Python я балотуюсь)
Джонатан Хартлі,
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.