PYTHON2DAY Telegram 7191
πŸ’» Как Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с `requirements.txt` ΠΈ Π½Π΅ ΡΠ»ΠΎΠ²ΠΈΡ‚ΡŒ хаос Π² зависимостях

Когда Python-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ разрастаСтся, Π² Π½Ρ‘ΠΌ появляСтся дСсятки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ… Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΈ Π½Π΅ Π»ΠΎΠΌΠ°Ρ‚ΡŒ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ„Π°ΠΉΠ» requirements.txt β€” список всСх зависимостСй ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

### πŸ“ Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π°

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ список установлСнных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, достаточно ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

pip freeze > requirements.txt


➑️ Она Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ всС Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΈ ΠΈΡ… вСрсии Π² requirements.txt.

### βš™οΈ Установка зависимостСй

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ машинС ΠΈΠ»ΠΈ сСрвСрС, выполняСм:

pip install -r requirements.txt


ВсС Π½ΡƒΠΆΠ½Ρ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ установятся автоматичСски β€” с Π½ΡƒΠΆΠ½Ρ‹ΠΌΠΈ вСрсиями.

### 🧩 Π€ΠΎΡ€ΠΌΠ°Ρ‚ Ρ„Π°ΠΉΠ»Π°

Π’ requirements.txt ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ вСрсии Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ:

numpy==1.21.0     # строгая вСрсия  
pandas>=1.3.0 # вСрсия Π½Π΅ Π½ΠΈΠΆΠ΅ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ
requests # установится послСдняя


И Π½Π΅ Π·Π°Π±Ρ‹Π²Π°ΠΉ: ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с #.

# ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ зависимости
numpy==1.21.0
pandas>=1.3.0

# Для тСстов
pytest


### πŸ™Œ РаздСляй ΠΈ властвуй

Если ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ большой β€” ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ зависимости:

# requirements.txt
-r base.txt
-r dev.txt


Π’Π°ΠΊ Ρ‚Ρ‹ ΠΎΡ‚Π΄Π΅Π»ΠΈΡˆΡŒ ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ΅Π½-зависимости ΠΎΡ‚ Ρ‚Π΅Ρ…, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

### πŸ”’ ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡ Ρ‡Π΅Ρ€Π΅Π· constraints.txt

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ вСрсии ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π±Π΅Π· прямого указания Π² основном Ρ„Π°ΠΉΠ»Π΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ constraints.txt:

pip install -r requirements.txt -c constraints.txt


ΠŸΡ€ΠΈΠΌΠ΅Ρ€:
requirements.txt

numpy==1.21.0
pandas


constraints.txt

pandas<=1.3.5


### 🧠 НСсколько ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΉ

Для Ρ€Π°Π·Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ β€” свои зависимости:

requirements-dev.txt     # Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°  
requirements-test.txt # тСсты
requirements-prod.txt # ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ΅Π½


ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

pip install -r requirements-dev.txt


### πŸ”„ ОбновлСниС ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄Ρ‚ΡΠ½ΡƒΡ‚ΡŒ свСТиС вСрсии Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ:

pip install --upgrade -r requirements.txt


### πŸ’¬ Π Π°Π±ΠΎΡ‚Π° с Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ΠΌ

ВсСгда ΠΈΠ·ΠΎΠ»ΠΈΡ€ΡƒΠΉ зависимости!

python -m venv venv
source venv/bin/activate # macOS/Linux
venv\Scripts\activate # Windows
pip install -r requirements.txt


### βœ… Π˜Ρ‚ΠΎΠ³

requirements.txt β€” Ρ‚Π²ΠΎΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ.
Π‘ Π½ΠΈΠΌ Ρ‚Ρ‹ избСТишь ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡˆΡŒ Π΄Π΅ΠΏΠ»ΠΎΠΉ ΠΈ смоТСшь спокойно Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π³Π΄Π΅ ΡƒΠ³ΠΎΠ΄Π½ΠΎ.

#python #doc #cheatsheet
Please open Telegram to view this post
VIEW IN TELEGRAM
πŸ‘82❀14πŸ”₯7🀯2😱1



tgoop.com/python2day/7191
Create:
Last Update:

πŸ’» Как Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с `requirements.txt` ΠΈ Π½Π΅ ΡΠ»ΠΎΠ²ΠΈΡ‚ΡŒ хаос Π² зависимостях

Когда Python-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ разрастаСтся, Π² Π½Ρ‘ΠΌ появляСтся дСсятки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ… Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΈ Π½Π΅ Π»ΠΎΠΌΠ°Ρ‚ΡŒ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ„Π°ΠΉΠ» requirements.txt β€” список всСх зависимостСй ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

### πŸ“ Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π°

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ список установлСнных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, достаточно ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

pip freeze > requirements.txt


➑️ Она Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ всС Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΈ ΠΈΡ… вСрсии Π² requirements.txt.

### βš™οΈ Установка зависимостСй

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ машинС ΠΈΠ»ΠΈ сСрвСрС, выполняСм:

pip install -r requirements.txt


ВсС Π½ΡƒΠΆΠ½Ρ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ установятся автоматичСски β€” с Π½ΡƒΠΆΠ½Ρ‹ΠΌΠΈ вСрсиями.

### 🧩 Π€ΠΎΡ€ΠΌΠ°Ρ‚ Ρ„Π°ΠΉΠ»Π°

Π’ requirements.txt ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ вСрсии Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ:

numpy==1.21.0     # строгая вСрсия  
pandas>=1.3.0 # вСрсия Π½Π΅ Π½ΠΈΠΆΠ΅ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ
requests # установится послСдняя


И Π½Π΅ Π·Π°Π±Ρ‹Π²Π°ΠΉ: ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с #.

# ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ зависимости
numpy==1.21.0
pandas>=1.3.0

# Для тСстов
pytest


### πŸ™Œ РаздСляй ΠΈ властвуй

Если ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ большой β€” ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ зависимости:

# requirements.txt
-r base.txt
-r dev.txt


Π’Π°ΠΊ Ρ‚Ρ‹ ΠΎΡ‚Π΄Π΅Π»ΠΈΡˆΡŒ ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ΅Π½-зависимости ΠΎΡ‚ Ρ‚Π΅Ρ…, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

### πŸ”’ ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡ Ρ‡Π΅Ρ€Π΅Π· constraints.txt

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ вСрсии ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π±Π΅Π· прямого указания Π² основном Ρ„Π°ΠΉΠ»Π΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ constraints.txt:

pip install -r requirements.txt -c constraints.txt


ΠŸΡ€ΠΈΠΌΠ΅Ρ€:
requirements.txt

numpy==1.21.0
pandas


constraints.txt

pandas<=1.3.5


### 🧠 НСсколько ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΉ

Для Ρ€Π°Π·Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ β€” свои зависимости:

requirements-dev.txt     # Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°  
requirements-test.txt # тСсты
requirements-prod.txt # ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ΅Π½


ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

pip install -r requirements-dev.txt


### πŸ”„ ОбновлСниС ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄Ρ‚ΡΠ½ΡƒΡ‚ΡŒ свСТиС вСрсии Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ:

pip install --upgrade -r requirements.txt


### πŸ’¬ Π Π°Π±ΠΎΡ‚Π° с Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ΠΌ

ВсСгда ΠΈΠ·ΠΎΠ»ΠΈΡ€ΡƒΠΉ зависимости!

python -m venv venv
source venv/bin/activate # macOS/Linux
venv\Scripts\activate # Windows
pip install -r requirements.txt


### βœ… Π˜Ρ‚ΠΎΠ³

requirements.txt β€” Ρ‚Π²ΠΎΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ.
Π‘ Π½ΠΈΠΌ Ρ‚Ρ‹ избСТишь ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡˆΡŒ Π΄Π΅ΠΏΠ»ΠΎΠΉ ΠΈ смоТСшь спокойно Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π³Π΄Π΅ ΡƒΠ³ΠΎΠ΄Π½ΠΎ.

#python #doc #cheatsheet

BY [PYTHON:TODAY]




Share with your friend now:
tgoop.com/python2day/7191

View MORE
Open in Telegram


Telegram News

Date: |

So far, more than a dozen different members have contributed to the group, posting voice notes of themselves screaming, yelling, groaning, and wailing in various pitches and rhythms. Members can post their voice notes of themselves screaming. Interestingly, the group doesn’t allow to post anything else which might lead to an instant ban. As of now, there are more than 330 members in the group. Telegram desktop app: In the upper left corner, click the Menu icon (the one with three lines). Select β€œNew Channel” from the drop-down menu. Telegram users themselves will be able to flag and report potentially false content. The channel also called on people to turn out for illegal assemblies and listed the things that participants should bring along with them, showing prior planning was in the works for riots. The messages also incited people to hurl toxic gas bombs at police and MTR stations, he added.
from us


Telegram [PYTHON:TODAY]
FROM American