logo

Com crear un fitxer Requirements.txt a Python

Si sou un desenvolupador, potser sabeu que mentre treballeu en qualsevol projecte de Python o projecte de ciència de dades, és essencial treballar sempre en un entorn que faci que el vostre projecte sigui reutilitzable i repetible sense crear cap problema per a ningú que recolli el vostre projecte. Per tant, abans de parlar de com crear un fitxer .txt de requisit a Python, feu-nos saber què és requirement.txt i per què el necessitem.

Què és el fitxer requirement.txt a Python?

En Python requisit.txt El fitxer és un tipus de fitxer que normalment emmagatzema informació sobre totes les biblioteques, mòduls i paquets en si mateix que s'utilitzen durant el desenvolupament d'un projecte concret. També emmagatzema tots els fitxers i paquets dels quals el projecte depèn o requereix executar-se. Normalment, aquest fitxer 'requirement.txt' s'emmagatzema (o resideix) al directori arrel dels vostres projectes. Aquí sorgeix una altra pregunta essencial per què necessitem aquest tipus de fitxer en els nostres projectes.

Per què necessitem requirement.txt?

Ens ajuda de diverses maneres, fins i tot quan revisem el nostre projecte en el futur, ja que resol gairebé tots els problemes de compatibilitat. Si mai treballeu en algun projecte de Python o desenvolupeu algun projecte, segur que sabeu que normalment necessitem diversos nombres de paquets. Tanmateix, durant el desenvolupament d'un projecte, generalment hem utilitzat una versió particular dels paquets. Més endavant, el gestor o el responsable de paquets poden fer alguns canvis, i aquestes modificacions poden trencar fàcilment tota l'aplicació. Per tant, és massa feina fer un seguiment de cada modificació dels paquets. Concretament, quan el projecte és massa gran, és fonamental fer un seguiment de cada paquet que estem utilitzant per evitar sorpreses inesperades.

Una de les maneres estàndard de resoldre aquest tipus de problemes és utilitzar un entorn virtual. El motiu és que hi ha dos tipus principals de paquets i ubicacions on normalment s'emmagatzemen les biblioteques de Python, i normalment no necessitem tots els tipus d'aquests paquets mentre treballem en un projecte concret; per tant, cal saber quin és el necessari per projecte per facilitar la reproductibilitat.

apurva padgaonkar

Normalment inclou els fitxers següents:

  • Paquets del sistema que forma part de la biblioteca estàndard de Python
  • Paquets del lloc (paquets de tercers) que instal·leu mitjançant pip.

Què és un entorn virtual?

Un entorn virtual és un tipus d'espai de treball aïllat o artificial que manté els paquets de l'usuari separats de la instal·lació del sistema local (o principal). Ens permet crear un entorn aïllat 'virtual' per a cada projecte Python. Això facilita que cada projecte sigui independent de l'altre projecte, especialment quan comparteixen les mateixes dependències. Hi ha diversos paquets disponibles que es poden utilitzar per crear un entorn virtual. Alguns dels paquets bàsics són els següents:

  • virtualenv
  • pipenv

Així doncs, un cop creat l'entorn virtual per al nostre projecte, vegem com instal·lar els paquets i les biblioteques. És molt fàcil aconseguir tots els paquets necessaris que necessitem per utilitzar en el nostre projecte amb l'entorn virtual. Vegem primer com utilitzar el 'virtualenv'.

A. virtualenv

És un tipus de biblioteca que ens permet crear un entorn virtual i utilitzar-lo. Per instal·lar el virtualenv, podeu seguir les instruccions donades:

1. Obriu el Cmd, escriviu l'ordre següent i premeu el botó Intro tal com es mostra a la imatge següent:

Comandament

 pip install virtualenv 

Sortida

Com crear un fitxer Requirements.txt a Python

2. Creació del nou directori de treball per al projecte

Ara creeu un nou entorn virtual dins del directori d'aquest projecte per evitar problemes innecessaris.

Comandament

 Python3 -m venv name_of_env 

Sortida

Com crear un fitxer Requirements.txt a Python

3. Ara per utilitzar aquest entorn virtual de nova creació, només cal que l'activem. Per activar aquest entorn aïllat, escriviu la següent comanda donada i premeu el botó Intro tal com es mostra a continuació:

Comandament

 name_of_envirnmentScriptsactivate 

Sortida

Com crear un fitxer Requirements.txt a Python

Per verificar que s'ha creat el nostre nou entorn virtual, podeu veure a l'indicador que el prefix s'ha canviat amb el nom del vostre nou entorn virtual, com en el nostre cas, hem anomenat el nostre entorn virtual com a 'nom_de_envirnmnet'. També podeu verificar-ho obrint el directori del projecte o la carpeta on es crearà un nou directori amb el nom especificat.

4. Ara vegem com crear el fitxer requirement.txt

Per crear el fitxer requirement.txt, serà bo saber què conté.

Els fitxers requirement.txt inclouen tots els tipus de paquets i biblioteques estàndard que s'utilitzen en aquest projecte concret. Per tant, aquest fitxer requirement.txt té un paper essencial mentre es desenvolupa qualsevol projecte petit o més gran. També ens ajuda a fer més portàtils els nostres projectes.

Amb l'ajuda del fitxer 'requirement.txt', es poden evitar fàcilment diversos problemes importants. Per entendre-ho amb més detall, podeu considerar l'exemple següent:

Exemple:

Suposem que heu creat un projecte nou, com ara una aplicació compatible amb la versió específica de la biblioteca i els paquets. Així, per algun motiu, reenvieu aquesta aplicació al vostre amic.

Com que no heu utilitzat el fitxer requirement.txt, és possible que la vostra aplicació no s'executi correctament o fins i tot no s'iniciï al sistema del vostre amic. El motiu principal d'això és que tots els usuaris no utilitzen la mateixa versió de biblioteques i paquets. Tanmateix, si heu utilitzat el fitxer requirement.txt, qualsevol pot executar i utilitzar el vostre projecte o aplicació perquè tots els paquets i biblioteques necessaris o utilitzats també s'especifiquen en forma de fitxer (requirement.txt) amb el vostre projecte.

En aquest fitxer .txt de requisit, l'usuari pot seleccionar, emmagatzemar i mantenir fàcilment els fitxers necessaris segons els seus requisits.

Com obtenir el fitxer Requirements.txt: utilitzant Virtualenv

Aquí, podem obtenir el fitxer requirements.txt. Per crear el fitxer requirement.txt, podem utilitzar l'ordre següent:

Comandament

 pip3 freeze > requirements.txt 

Sortida

Com crear un fitxer Requirements.txt a Python

Com obtenir el fitxer Requirements.txt: utilitzant Pipenv

Pipenv també és una excel·lent eina de biblioteca de creació d'entorns virtuals que té algunes funcions interessants. Podeu utilitzar les instruccions següents per obtenir el fitxer requirement.txt.

1. Escriviu l'ordre següent per instal·lar el pipenv

Comandament

 pip install pipenv 

Sortida

Com crear un fitxer Requirements.txt a Python

2. Ara escriviu la següent comanda i premeu el botó Enter.

Comandament

 pipenv install mypackage 

L'ordre anterior s'utilitza per instal·lar els paquets necessaris per als projectes.

Sortida

Com crear un fitxer Requirements.txt a Python
  • Després d'instal·lar els paquets per al projecte, hem d'activar l'entorn virtual. Per tant, per activar l'entorn virtual, podeu utilitzar les ordres següents:

Comandament

 pipenv shell 

O

 pipenv run 

Aquestes ordres es poden utilitzar per activar l'entorn virtual de nova creació, tal com es mostra a continuació:

Sortida

Com crear un fitxer Requirements.txt a Python

Ara escriviu l'ordre següent per executar l'script a l'entorn virtual.

Comandament

 pipenv run Python myscript.py 

Explicació

Aquesta ordre s'utilitza per executar l'script especificat a l'entorn virtual tal com es mostra a continuació:

Sortida

Com crear un fitxer Requirements.txt a Python

Com que és més fàcil, i també fa un seguiment automàtic de totes les biblioteques utilitzades per al projecte en un pipfile i un pipfile. fitxer de bloqueig. Aquests fitxers tenen el mateix paper que un requirements.txt i també emmagatzemen informació addicional sobre diverses coses que no s'inclouen al requirement.txt.

Per tant, podeu utilitzar aquest fitxer pip com a alternativa al fitxer requirements.txt. Tanmateix, si encara voleu utilitzar el fitxer requirements.txt, podeu utilitzar l'ordre següent:

 pipenv -r lock >> requirements.txt 

Sortida

Com crear un fitxer Requirements.txt a Python

Com obtenir el fitxer Requirements.txt: sense Virtualenv utilitzant Pipreqs

Pipreqs és una de les eines més eficients i senzilles d'utilitzar, que no requereix que creeu cap entorn virtual. Per tant, és molt útil si un usuari només requereix els paquets i biblioteques utilitzats en una aplicació o en el projecte.

Una de les coses més importants és que escaneja automàticament els scripts o fitxers Python per a les biblioteques importades i genera un requirements.txt.

Vegem com funciona:

1. En primer lloc, heu d'instal·lar el 'pipreqs', de manera que per descarregar-lo escriviu la següent comanda donada al cmd i premeu el botó Enter:

Comandament

 pip install pipreqs 

Sortida

Com crear un fitxer Requirements.txt a Python

2. Un cop finalitzada la instal·lació, podeu iniciar 'pipreqs' per obtenir el fitxer requirement.txt assenyalant-lo a la ubicació on es troba la carpeta del vostre projecte.

Comandament

 pipreqs /path/to/project 

Sortida

Com crear un fitxer Requirements.txt a Python

Per verificar que el fitxer requirement.txt s'ha creat correctament, podeu veure a la carpeta del vostre projecte que es crearà un nou fitxer 'requirement.txt', tal com es mostra a continuació:

Com crear un fitxer Requirements.txt a Python