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

Резултати

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

Пребарај: #guasia

当前筛选 #guasia清除筛选
Gumart Announcement 🛒

@gumartec · Post #241 · 14.04.2025 г., 00:11

🌊 GuAsia Winner Has Arrived at Songkran. Congratulation winners!🇹🇭 From the leaderboard to the land of water fights and tradition, our GuAsia winners have officially landed in Bangkok to experience the legendary Songkran Water Festival - live and in person! 🛫💧 A round-trip ticket to Bangkok from April 13 to April 15 to experience one of the most iconic cultural events on Earth has already been sent straight to the winner’s wallet, along with a personal notification. ✈️ 🏆 As part of Gumart’s biggest campaign ever, Gu Go Global, this was Asia’s turn to shine—and the energy was real. 🏁With more giveaways coming to every continent, your chance might be just around the corner! #GuGoGlobal#GuAsia

Gumart Announcement 🛒

@gumartec · Post #382 · 25.01.2026 г., 10:14

⏱ 2 DAYS LEFT — Don’t Miss This! 🚨 💥 The clock is ticking. Only 48 hours remain before our GuAsia Mini-Game officially closes. ❗️ What’s at stake? Top 5 players on the leaderboard will secure exclusive rewards, including real-world travel experiences, not just digital prizes. 🌍 This isn’t just a game. It’s your chance to turn activity into real movement, rewards into real journeys, and rankings into real recognition. 👀 🔥 Final push starts NOW: 1️⃣ Invite more friends 2️⃣Climb the leaderboard 3️⃣Lock in your spot ⏰ 2 days left. Once it’s over — it’s over. #GuGoGlobal#GuAsia#FinalCountdown

Gumart Announcement 🛒

@gumartec · Post #246 · 19.04.2025 г., 03:46

🌊 Gumart in Songkran – Thailand 🇹🇭 🌐#GuGoGlobal Campaign – Taking Web3 to the Heart of Culture! 📍 Checkpoint: Songkran Festival, Bangkok, Thailand One of our GuAsia winners has just shared their unforgettable journey at the legendary Songkran Festival in Bangkok - after receiving their exclusive reward from the #GuGoGlobal giveaway. 😱 From vibrant street parades to joyful water fights, this was more than just a trip - it was a moment where Web3 met real-world celebration, and Gumart became part of the experience.⭐️ 💡 This is what Gu Go Global is all about: bringing crypto utility to real life, through people, places, and culture. 🎉And yes - more giveaways are coming to every continent. Your city might be next. #GuGoGlobal#GuAsia#Songkran

Gumart Announcement 🛒

@gumartec · Post #240 · 10.04.2025 г., 07:39

🎉 GuAsia Activation: Fly to Songkran Festival with Gumart!🇹🇭 As part of Gumart’s biggest-ever global campaign, Gu Go Global (April–May 2025), we’re bringing the celebration to Asia with a special giveaway!📈 ✈️ Prize: Round-trip flight ticket to Bangkok, Thailand, to experience the iconic Songkran Water Festival live! 💧 🗓 Duration: April 8 - April 13 📌 How to join: Top 3 referral leaderboard in Asia will receive special prizes – including a flight to Songkran! Be bold, be global. This is your moment. See you in Asia!🔼 #GuGoGlobal#GuAsia#SongkranFestival