Как стать автором
Обновить

Комментарии 20

В Ubuntu PyСharm можно установить с помощью umake:
umake ide pycharm
Не надо. Это тухлятина и костыли. Есть нормальные актуальные snap-пакеты
Не понял про тухлятину. В Ubuntu 18.04 устанавливается PyCharm 2019.3.3. Как замена ручного скачивания и распаковки — вполне.
Про snap в статье написано.
Самый простой способ установить PyCharm в Ubuntu, на мой вкус, это через их устновщик JetBrains ToolBox. Он же потом сообщает о новых версиях и позволяет обновить в один клик
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Хорошо, возьму на заметку.
Кем считается? В чем именно проявляется «неоптимальность»?

pipenv и poetry облегчают ведение проекта, но решают несколько разные задачи.
Кроме того что авторы `pipenv` имели ощутимые проблемы во взаимодействия с комьютнити, проблемы с совместимостью [1], а последние несколько месяцев не ведется никакой активной разработки. Проект фактически умер. Поэтому я бы его не стал использовать или рекомендовать для разработки новых проектов.
`poetry` же, на мой взгляд, весьма перспективный проект, но все еще имеет проблемы с производительностью (ощутимые на некоторых сценариях) [2] и регрессии [3].
В любом случае оба этих проекта так или иначе используют виртуальные окружения.

Конкретно пакет virtualenv действтельно считается устаревшим, так как поддержка виртуальных окружений является частью стандартной библиотеки Python начиная 3.3 [4].

[1] chriswarrick.com/blog/2018/07/17/pipenv-promises-a-lot-delivers-very-little
[2] github.com/python-poetry/poetry/issues/2094
[3] github.com/python-poetry/poetry/issues/2170
[4] docs.python.org/3/library/venv.html

Лол.

У меня есть несколько вопросов: а зачем в Windows добавлять путь к Python в переменную окружения PATH?
А что делать если нужно использовать несколько версий Python?


Для базовой версии Python можно создать переменную покушения c указанием полного пути. Но мне кажется, что лучше сделать параметризированный batch файл и выполнять запуск нужного базового интерпретатора Python.

Устанавливая Python в Ubuntu, Python становится доступным для всей системы, можно сказать, что он по умолчанию добавляется в PATH.

У меня в Windows LLVM 9 потребовал библиотеки Python 3.6. Так что был практический смысл добавления Python в PATH. Как по другому разрешить эту зависимость я затрудняюсь.

А что делать если нужно использовать несколько версий Python?

Статья рассчитана для начинающих, которым ещё рано беспокоиться о проблемах связанных с использованием нескольких версий Python.

Как поступать в ситуации, когда возникла потребность в разных версиях Python, у меня нет четкого мнения. Всегда можно переопределить переменные среды. На своей практике я писал batch и cmd файлы, устанавливал Conda в Ubuntu. Современные IDE позволяют создавать профили/окружения, где можно указать конкретные компиляторы/интерпретаторы.

Обычно не имеет смысла иметь более двух версий python на одном компьютере. Как правило, это последняя вторая и последняя третья версии. Если так получилось, что установлены обе версии python, то будет обидно, если скрипты третьей версии будут запускаться интерпретатором второй версии. Поэтому лучше не ставить галку напротив "Add Python to Path" при установке (если только вы не собираетесь устанавливать LLVM), а отметить пункт "Install launcher".
Если нужно запустить скрипт второй версий python, то сделать это можно так:


:: Двумя двоеточиями в bat-файлах обозначают комментарии
:: py -2 - это эквивалент команды python из ubuntu
py -2 myscript.py

Для третьей версии запуск будет аналогичным


:: py -3 - это эквивалент команды python3 из ubuntu
:: Пример глобальной установки пакета в определённую версию
py -3 -m pip install virtualenv 
:: Пример использования глобальной библиотеки
py -3 -m virtualenv venv

Кстати, про ubuntu. В windows 10 начиная с версии 1910 (если не ошибаюсь) команда python является такой же встроенной, как find, sort и т.п. Что позволяет python-файлам быть такими же родными файлами скриптов для windows, как cmd/bat-файлы или powershell-скрипты. Только делает эта команда совсем не то, что ожидается. При попытке её выполнить, открывается windows-магазин из которой нужно установить python. После установки поведение команды python вполне соответствует ожиданиям. Единственное отличие от ubuntu в том, здесь python третий, а не второй.
Вернём к версия python в windows. Со временем, третьих версий может стать больше одной, тогда при запуске вместе с мажорной нужно указывать минорную версию:


:: У каждой версии свои глобальные пакеты
py -3.7 -m pip install virtualenv
py -3.8 -m pip install virtualenv

Чтобы не запутаться в версиях, можно посмотреть, какие из уже установлены


py -0

В самом худшем случае приходится указывать не только полную версию интерпретатора, но и разрядность


py -3.8-64 -m http.sever

По моему опыту, в 32-разрядной версии возникает меньше проблем с пакетами.

Пакет venv входит в стандартную библиотеку Python начиная с версии 3.3 и устанавливать сторонний пакет `virtualenv` нет необходимости.

$ python3 -m venv <path/to/venv>

https://github.com/pyenv/pyenv

Для винды есть аналоги, этот конкретный для никсов

А какой никакой дефолный питон должен быть в path, некоторые вещи требуют его

Поставил pypy3 на Ubuntu, в PyCharm в списке интерпретаторов он не появляется. Можно ли как-то добавить его туда?

Один из вариантов, во время создания нового окружения укажите для Base interpreter путь до pypy3.

Пробую, получаю такую ошибку:


running install

error: can't create or remove files in install directory

The following error occurred while trying to add or remove files in the
installation directory:

    [Errno 2] No such file or directory: '/home/nomhoi/PycharmProjects/test_pypy/.env/site-packages/test-easy-install-16450.write-test'

The installation directory you specified (via --install-dir, --prefix, or
the distutils default setting) was:

    /home/nomhoi/PycharmProjects/test_pypy/.env/site-packages/

This directory does not currently exist.  Please create it and try again, or
choose a different installation directory (using the -d or --install-dir
option).

И после этого в списке интерпретаторов окружение не появляется.

У меня опыта работы с pypy3. Я затрудняюсь помочь.

Без PyCharm с командной строки виртуальное окружение для pypy нормально устанавливается. Интересно было в PyCharm настраивать.

Забыл «нет» добавить… Если будет время, я поразбираюсь в этом вопросе.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Изменить настройки темы

Истории