TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #210 · 3 фев.

Что делать если нужно поставить какую-то Python-библиотеку а root-прав нет? То есть в систему библиотеку никак и ничего не поставить. Есть как минимум два способа это решить правильно! 🔸 Сделать виртуальное окружение и ставить там что угодно. Это позволит создать полностью независимое исполняемое окружение для ваших приложений. Все библиотеки будут храниться в домашней директории юзера а значит доступ на запись имеется. Создать очень просто: python3 -m venv ~/venvs/myenvname Теперь активируем окружение # Linux source ~/venvs/myenvname/bin/activate # Windows %userprofile%\venvs\myenvname\Scripts\activate.bat Можно ставить любые библиотеки и запускать приложение. Это стандартный метод работы с любым проектом. Если еще не используете его, то пора начинать. Даже при наличии root доступа! 🔸 Бывает, что нет возможности запустить приложение из своего виртуального окружения. Например, его запускает какой-то сервис от вашего юзера и вставить активацию окружения вы не можете. В этом случае можно установить библиотеки для Python не глобально в систему, а только для юзера. Выполните этот код в консоли: python3 -m site Вы получите что-то такое: sys.path = [ '/home/user', '/usr/lib/python37.zip', '/usr/lib/python3.7', '/usr/lib/python3.7/lib-dynload', '/home/user/.local/lib/python3.7/site-packages', ... ] USER_BASE: '/home/user/.local' USER_SITE: '/home/user/.local/lib/python3.7/site-packages' ENABLE_USER_SITE: True Нас интересует параметр USER_SITE. Это путь к пользовательским библиотекам, которые доступны по умолчанию, если они есть. Именно сюда будут устанавливаться модули если добавить флаг --user при установке чего-либо через pip pip install --user requests Для этой команды не нужны root-права. После неё можно запускать системный интерпретатор без виртуальных окружений и установленная библиотека будет доступна для текущего юзера. Параметр USER_BASE показывает корневую директорию для хранения user-библиотек. Её можно изменить с помощью переменной окружения PYTHONUSERBASE export PYTHONUSERBASE=~/pylibs python3 -m site ... USER_BASE: '/home/user/pylibs' USER_SITE: '/home/user/pylibs/lib/python3.7/site-packages' Получается некоторое подобие виртуального окружения для бедных 😁 которое можно менять через эту переменную (не делайте так!Лучше venv!) 🔸 Дописывание пути в PYTHONPATH Этот способ не входит в список "двух правильных", но тоже рабочий. Здесь придётся сделать всё несколько сложней. Сначала ставим библиотеку в любое место указывая путь установки pip3 install -t ~/mylibs modulename Библиотека установится без привязки к какому-либо интерпретатору. То есть по умолчанию не будет видна. Теперь в нужный момент добавляем этот путь в sys.path или в PYTHONPATH. Не буду советовать так делать. Единственный раз когда этот способ мне пригодился и решил поставленную задачу, это при создании общей библиотеки для кластера компьютеров. Модули лежат в сети и подгружаются для всех из одного и того же места. То есть обновлять файлы требуется только один раз а не на всех хосты отдельно. Минусы такого подхода: ▫️Нужно всем хостам пробить нужный путь в .bashrc или ещё куда-то чтобы он сетапился на старте. ▫️Чем больше хостов тем больше нагрузка на сеть. Иногда такой способ не подходит именно по этой причине. Тогда Ansible вам в помощь. ▫️Не очень подходит если хосты с разными операционками. Некоторые библиотеки различаются для Linux и Windows (там, где есть бинарники) и приходится мудрить более сложные схемы. #tricks#basic

Резултати

Пронајдени 2 слични објави

Пребарај: #londonprotest

当前筛选 #londonprotest清除筛选
Hong Kong Democracy Movement

@hkdmovement · Post #7950 · 16.03.2025 г., 16:28

Around 6,000 people gathered in London on March 15 to protest against China’s plan to build a "super embassy" at Royal Mint Court. The demonstration, organized by Hong Kongers in the UK along with local residents, highlighted deep opposition to this project. Flags supporting movements like "Liberate Hong Kong" and Tibetan independence were seen throughout the crowd. A foreign individual, draped in a Chinese flag and holding provocative slogans, attempted to disrupt the event but was peacefully removed by the police. Protesters emphasized the importance of continuing to focus on political prisoners, including those involved in the "47 activists case." #LondonProtest#SuperEmbassy#HongKong#NoToSuperEmbassy 3月15日,約6000人在倫敦舊皇家鑄幣廠(Royal Mint Court)集會,抗議中國興建「超級大使館」的計劃。這次示威由在英港人組織聯同當地人發起,表達對該項目強烈不滿。現場可見「光復香港」、支持藏人等旗幟,氣氛熱烈。 一名外籍男子披着中國國旗,拿着挑釁性標語試圖干擾集會,最終被警方帶離現場。示威者呼籲社會關注政治犯,包括「47人案」中的在囚人士,繼續支持民主與自由。 #倫敦示威#光復香港#中國大使館重置

Hong Kong Democracy Movement

@hkdmovement · Post #7970 · 20.04.2025 г., 23:11

🚨5月3日倫敦鑄幣廠大遊行 🚨May 3rd Anti-Mega Chinese embassy March Date: 03-05-2025 / 2-5pm Location: Royal Mint Court Format: 遊行& 集會 March & Assembly 齊心協力,見證歷史! 誠邀你再臨倫敦,一同齊集鑄幣廠,以遊行形式抗議反對興建中共超級大使館! 早前傳媒估計政府可能五月作出決定,所以我哋而家更要把握機會向警方施壓,表明現時對附近的風險評估絕不成立,必須重申對倫敦鑄幣廠超級大使館嘅立場。 #NoMegaEmbassy#LondonProtest#NoSuperEmbassy#超級大使館#UK#倫敦#London#英國#鑄幣廠#中國超級大使館#舊皇家鑄幣廠#royalmintcourt