Відповіді:
Якщо ви використовуєте Ubuntu 14.04 або 16.04, ви можете використовувати PPA Delixnakes Felix Krull за посиланням https://launchpad.net/~deadsnakes/+archive/ubuntu/ppa :
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt-get install python3.6
Крім того, ви можете використовувати PPA J Fernyhough за адресою https://launchpad.net/~jonathonf/+archive/ubuntu/python-3.6 :
sudo add-apt-repository ppa:jonathonf/python-3.6
sudo apt-get update
sudo apt-get install python3.6
Якщо ви використовуєте Ubuntu 16.10 або 17.04, то Python 3.6 знаходиться у сховищі Всесвіту, тож ви можете просто запустити:
sudo apt-get update
sudo apt-get install python3.6
Щоб викликати інтерпретатор Python 3.6, запустіть python3.6
.
Ubuntu 17.10 і 18.04 вже поставляються з Python 3.6 за замовчуванням. Просто запустіть, python3
щоб викликати його.
dict
що виявляється в деяких рідкісних обставинах).
sudo apt remove python3.5
чи щось подібне; Python є більш важливим для Ubuntu, ніж ви могли б подумати, і ви можете зламати встановлення Ubuntu. Якщо ви хочетеpython3
зробити картуpython3.6
, створіть натомість символьне посилання!
python3.6-pip
пакету, і тому я звик curl https://bootstrap.pypa.io/get-pip.py | sudo python3.6
встановлювати pip
.
ppa:jonathonf/python-3.6
прибутого зі зламаним піп-файлом та без легкої установки 14.04. Однак мені вдалося виправити це, встановивши easy_install, а потім перевстановивши pip через curl https://bootstrap.pypa.io/ez_setup.py -o - | python3.6 && python3.6 -m easy_install pip
випадок, якщо хтось
pip
з установкою ppa:jonathonf/python-3.6
. З іншого боку, ppa:deadsnakes/ppa
працювали бездоганно ( apt-get install python3.6 python3.6-venv -y
).
Я б рекомендував pyenv для вирішення ваших негараздів. Він не використовує Aptitude, і дійсно пов'язані з «будувати самі», але це повністю автоматизований . Ви можете створити та встановити нову (або стару) версію Python, просто сказавши pyenv install 3.6.0
. Все працює як ваш користувач, тому вам не доведеться турбуватися про те, щоб зіпсувати Python, використовуваний самим Ubuntu.
Плюс відповідь на наступне запитання "Як встановити Python 3.7 за допомогою apt-get?" має один і той же відповідь: pyenv update; pyenv install 3.7.0
. Як правило, він буде працювати в той же день випуску, тому що вам не потрібно чекати, коли хтось інший упакуватиме його для Ubuntu. Перегляньте всі версії, з якими можна встановитиpyenv install --list
Встановіть інструменти та заголовки, необхідні для створення CPythons (екзотичні пітони, такі як PyPy чи Jython, можуть мати інші залежності). Git використовується pyenv, плюс він також дозволяє будувати / встановлювати вихідні гілки, так що ви можете встановити будь-який 3.8 зараз, тобто головну гілку CPython fresh off GitHub:
sudo apt-get install -y git
sudo apt-get install -y build-essential libbz2-dev libssl-dev libreadline-dev \
libffi-dev libsqlite3-dev tk-dev
# optional scientific package headers (for Numpy, Matplotlib, SciPy, etc.)
sudo apt-get install -y libpng-dev libfreetype6-dev
Запустіть сценарій інсталятора (встановлює pyenv та деякі дуже корисні плагіни pyenv оригінальним автором; див. Тут докладніше)
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
Додайте рядки init до свого ~/.profile
або ~/.bashrc
(він згадує його в кінці сценарію встановлення):
export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
Перезавантажте оболонку (закрийте та відкрийте або exec $SHELL
) або перезавантажте сценарій профілю. (наприклад, з source ~/.bashrc
)
Готово!
Якщо не торкатися системи Python (як правило, погана ідея; служби на рівні ОС можуть покладатися на деякі конкретні версії бібліотеки тощо), створити власне середовище, це просто! Ще краще, ні sudo
, для цього чи pip
встановлює!
Встановіть бажану версію Python (це завантажить джерело та створить його для вашого користувача, введення не потрібно)
pyenv install 3.6.0
Зробіть це virtualenv, щоб ви могли пізніше зробити інших, якщо хочете
pyenv virtualenv 3.6.0 general
Зробіть це глобально активним (для вашого користувача)
pyenv global general
Робіть те, що ви хочете, з Python / pip тощо. Це ваше.
Якщо ви хочете пізніше очистити свої бібліотеки, ви можете видалити virtualenv ( pyenv uninstall general
) або зробити нову ( pyenv virtualenv 3.6.0 other_proj
). Також у вас може бути активне середовище для кожного каталогу: pyenv local other_proj
він видалить .python-version
файл у вашу поточну папку, і кожного разу, коли ви будете викликати Python або встановлені на Pip утиліти Python з нього або під ним, вони будуть переливаються pyenv.
bash: pyenv: command not found
, fish: Unknown command 'pyenv'
$PATH
, має бути один запис, який закінчується чимось на кшталт .pyenv/bin
. Якщо він відсутній, переконайтеся, що ви дотримувались №3 І №4 (перезавантажте оболонку) у розділі Встановити pyenv вище.pyenv: no such command 'virtualenv'
pyenv commands
.rm -r ~/.cache/pip/wheels/
.)
pyenv
потрібно встановлювати кожного користувача, якому потрібен Python? І якщо у мене є 3 користувачі, яким потрібна така ж версія Python 3.6, то доведеться її скомпілювати 3 рази, і це займе 3-кратний простір на диску? Якщо це правда, то це смокче…: /
/opt
чи що завгодно і додати деякі посилання на /bin
. Я вважаю, що це виключно корисний для користувачів; користувачі не потребують судо (крім libs). Місце на диску - це дешево.
Це залежить від того, яку версію Ubuntu ви використовуєте.
Оскільки Python 3.6 встановлений у всесвітньому сховищі Ubuntu 16.10 та Ubuntu 17.04, ви можете безпосередньо встановити python 3.6 із сховища. Просто використовуйте команди нижче:
sudo apt update
sudo apt install python3.6
Існує два способи встановлення Python3.6 на Ubuntu 16.04
Встановіть необхідні залежності, скачайте вихідний код python 3.6 та створіть середовище та встановіть
sudo apt install build-essential checkinstall
sudo apt install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev
wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tar.xz
tar xvf Python-3.6.0.tar.xz
cd Python-3.6.0/
./configure
sudo make altinstall
Ви можете встановити Python 3.6 з PPA за допомогою наведених нижче команд
sudo add-apt-repository ppa:jonathonf/python-3.6
sudo apt update
sudo apt install python3.6
Якщо Python 3.6 правильно встановлений, ви можете викликати інтерпретатора python, запустивши python3.6
в терміналі.
Я сподіваюся, що це допомагає. Якщо у вас виникли якісь проблеми, ви можете перевірити цю публікацію в блозі тут .
Альтернативний маршрут, якщо ви не можете знайти жодних робочих репостів, можна спробувати скласти з джерела. Ви можете знайти вихідний код на сторінці завантаження . Потім завантажте та зніміть знімок тарболу; наприклад для Python-3.6.1.tgz
.
Процес видалення файлу tgz є:
tar -xvzf /path/to/yourfile.tgz
Після того як ви перебуваєте в шляху до файлу, до якого було розпаковано, запустіть:
./configure
make
make altinstall
І сподіваємось, це має вирішити проблему для вас.
(id preferably not build it on my own)
. Можливо, було б краще пройти apt
маршрут, якщо це можливо.
Для Ubuntu 15.10 я встановив його успішно за допомогою цього методу:
sudo add-apt-repository ppa:jonathonf/python-3.6
Але я редагував цей файл:
sudo vi /etc/apt/sources.list.d/jonathonf-ubuntu-python-3_6-wily.list
І я помітно змінився на надійний, а потім:
sudo apt-get update
sudo apt-get install python3.6
Спочатку дотримуйтесь деяких інших відповідей, щоб встановити Python 3.6 або 3.7. Потім, якщо ви хочете встановити пакети PyPi, такі як OpenEXR через pip
вас, ви можете отримати деякі помилки. Деякі з них (наприклад, для пакета PyPi OpenEXR) можуть бути вирішені, встановивши пакет розробки для вашого недавно встановленого Python. Це можна зробити за допомогою наступних дій:
sudo apt-get install python3.6-dev
або
sudo apt-get install python3.7-dev
Можливо, запропонувати Конду не є поганою ідеєю. Я думаю, що принаймні простіше, ніж використовувати pyenv. Але, можливо, це залежить від того, що ви маєте намір робити з Python, адже я думаю, що з Conda ви можете отримати додаткові пакети.
EDIT : Напевно, варто згадати, що після встановлення Conda версії Python за замовчуванням ви можете встановити потрібну версію, тут 3.6, використовуючи conda
як
conda install python==3.6
aptitude
, запустітьaptitude search python3