Вы должны войти, чтобы создавать сообщения и темы.

portable python

Добрый вечер коллеги, подскажите пожалуйста где стоит искать последние портативные версии python, которые быстро обновляются, мало весят, стабильно работают и поддерживают pip. 
Варианты, о которых знаю я:
1. winpython, 78 MB, долго обновляется.
2. portable python c sourceforge, 127 MB, долго обновляется.
3. python embeddable, 32 MB после установки pip, обновляется сразу, pip кривоват, иногда выдает ошибку когда я устанавливаю модули.

Дополню насчет проблем с python embeddable.

  1. Устанавливаю pylint:
    СкопированоD:\dev\python-3.10.1\python.exe -m pip install pylint
  2. Все установилось, запускаю его:
    СкопированоD:\dev\python-3.10.1\python.exe -m pylint d:\dev\projects\betterdata\bd.py
  3. Вылезает ошибка:
    Спойлер
    СкопированоTraceback (most recent call last):
    File "runpy.py", line 196, in _run_module_as_main
    File "runpy.py", line 86, in _run_code
    File "D:\dev\python-3.10.1\lib\site-packages\pylint\__main__.py", line 9, in <module>
    pylint.run_pylint()
    File "D:\dev\python-3.10.1\lib\site-packages\pylint\__init__.py", line 21, in run_pylint
    from pylint.lint import Run as PylintRun
    File "D:\dev\python-3.10.1\lib\site-packages\pylint\lint\__init__.py", line 76, in <module>
    from pylint.lint.parallel import check_parallel
    File "D:\dev\python-3.10.1\lib\site-packages\pylint\lint\parallel.py", line 8, in <module>
    from pylint import reporters
    File "D:\dev\python-3.10.1\lib\site-packages\pylint\reporters\__init__.py", line 27, in <module>
    from pylint import utils
    File "D:\dev\python-3.10.1\lib\site-packages\pylint\utils\__init__.py", line 47, in <module>
    from pylint.utils.ast_walker import ASTWalker
    File "D:\dev\python-3.10.1\lib\site-packages\pylint\utils\ast_walker.py", line 5, in <module>
    import traceback
    ModuleNotFoundError: No module named 'traceback'

    Тут требуется модуль traceback, который по дефолту уже должен быть встроен в python, но его почему-то нет. Причем если я создаю пустой файл и пишу там Скопированоimport traceback, то он спокойно запускается и не выдает никаких ошибок. Такое происходит на python embeddable, на версиях 3.10.0 и 3.10.1. На portable python c sourceforge такого нет, но как я уже написал выше, он слишком много весит, и  очень долго обновляется. Подскажите пожалуйста как эту проблему можно решить.

В общем я решил еще раз погуглить, и узнал что pylint чекает исходные коды многих файлов python, а python embeddable поставляется со скомпилированными файлами, а исходный код можно скачать почитать отдельно. Поэтому pylint не может работать с python embeddable. Так что у меня все еще поднят вопрос о поиске potable версии python, которая быстро обновляется и мало весить, т. к. winpython и portablepython еще не обновились до версии 3.10.1 и использовать pylint  на этой версии я не могу.

Добрый день 🖐
Такие вещи, чтобы не было проблем в разработке, лучше держать на виртуалке.

Лайкнул gmanka
gmanka
Цитата: Сергей от 04.01.2022, 22:46

Добрый день 🖐
Такие вещи, чтобы не было проблем в разработке, лучше держать на виртуалке.

Приветствую, виртуалкой пользуюсь не часто, т. к. компьютер довольно слабый, и возни с ней много. Виртуалка, насколько я знаю, дает 2 преимущества: возможность откатиться, и возможность не загружать систему мусором. Для откатов я использую git и acronis, для чистоты системы портативные программы.

Не только эти 2 преимущества.
Это даёт ещё также то, что это отдельная рабочая среда, которую Вы настраиваете так, как нужно именно Вам.
Вот как сейчас Вам нужен Python, но только для работы и разработки, а в живой среде Вы не кодите, и Вам он там не нужен. Для этого как раз и подходит именно виртуалка.

Также не стоит забывать, что отдельная рабочая среда хороша тем, что в ней без труда и помех можно не только комфортно работать / пробовать новое, но и разрабатывать серьёзные вещи: 1) работа с дисками 2) работа с файловой системой 3) работа с драйверами и устройствами напрямую.
Да, можно обойтись Acronis, однако поверьте, быстрее иметь возможность откатить именно виртуалку. Тем более помимо разработки нужно отвлечься на ещё какую-нибудь вещь, которую Вы делаете в основной среде.

Таким образом, разрабатывать софт в виртуальной среде намного комфортнее, чем в живой. Потому что посидев полгода в Visual Studio с обновлениями и посмотрев, как разрастается системный диск, Вы ужаснётесь и поймёте, что без отката тут просто никак. 

Подробнее про удобство разработки Хачатур писал на прошлом сайте. Я это сохранил и сейчас поделюсь с Вами:
JailbreakVideo – Лучшее! Пункт 4

Лайкнули Игорь, Aleksey и gmanka
ИгорьAlekseygmanka

Добрый вечер 🖐
Я добавлю лишь, что виртуалка прожорлива настолько, насколько ей это позволишь =)
И да, в ней намного комфортнее и безопаснее делать эксперименты. Я лично снимки чуть ли ни каждый день делаю в ней.
Может потому что задачи такие. Но у Меня много и все разные и все практически решаются именно в виртуальной среде.
Отведите VirtualBox минимум ресурсов и работайте / ломайте / экспериментируйте.

Комп, который у Меня в Уроках по программированию от 2019 года довольно не новый и не топовый и всё летает, что сейчас новый, что тогда старый, один в один, все свидетели.

Лайкнули Aleksey, Александр и gmanka
AlekseyАлександрgmanka
В любой непонятной ситуации переходи на beta  © Win 10 Tweaker

Вы меня убедили, поставлю вируталку, спасибо.

Если что, вопрос о поиске лучшей портативной python версии все еще стоит. Сейчас остановился на python embeddable, а вместо pylint перешел на другие линтеры

Цитата: Сергей от 04.01.2022, 23:38

Потому что посидев полгода в Visual Studio с обновлениями и посмотрев, как разрастается системный диск, Вы ужаснётесь и поймёте, что без отката тут просто никак. 

Здравствуй, в чём проблема просто отключить эти обновления или это не желательно делать в случаи visual studio?

Приветствую! Если с виртуалками запариваться не особо хочется, то может стоит взглянуть в сторону виртуальных окружений (не виртуалка, о которой писали выше)? Здесь конечно лучше питон установить в систему, но зато для каждого проекта будет своё окружение в виде набора библиотек и даже может быть своя версия питона.

Если хочется прям максимальной портативности, то ещё есть вариант достичь такого с помощью docker. Если суперкоротко, ты оборачиваешь питон в изолированный контейнер, в котором можешь делать всё, что хочешь. По смыслу очень похоже на виртуализацию с помощью virtualbox и тд.  При таком подходе ты можешь менять питоны, разные операционки и вообще всё, что захочется, кроме железных настроек (за некоторыми нюансами), причем очень просто. Но цена - некоторая сложность такого подхода, придётся разбираться, что такое docker и как там всё устроено, ибо здесь нет таких очевидностей, как с виртуалками. Хотя с другой стороны, для начала хватит одного часового видоса на ютубе

Здравствуйте, идея хорошая