Com funciona un entorn de treball a Python.

Començar a programar en Python és senzill, tant a nivell de recursos de hardware com en autoformar-nos.

Ni tan sols cal instal·lar-nos res per a començar a programar codi senzill amb Python, gràcies al projecte Jupyter i els fitxers amb extensió .ipynb

Aquest, com el seu acrònim indica, permet executar codi de Julia, Python i R en navegadors web sense cap instal·lació prèvia, i suporta les llibreries més estables de tractament i visualització de dades (no totes).

Ens permet realitzar programació exloratòria; però arriba un moment que necessitem crear projectes web que requereixen funcionalitats avançades i llavors cal crear un entorn de treball.

Com que moltes de les tecnologies de desenvolupament amb les que treballareu en la bioinformàtica estan dissenyades per funcionar de forma òptima en distribucions Linux: bases de dades (tant relacionals com NoSQL), Python, PHP, … recomanem muntar aquest entorn de treball serà sobre Linux.

Hi ha moltes maneres de tenir Linux, encara que no el tinguem instal·lat (VirtualBox o VMWare), o WSL (Windows Subsystem For Linux)...

Des d'aquí us proposem usar la eina desenvolupada pel David de Mingo Box si voleu.

Instal·lació d'un entorn virtual per a Python en Linux.

Versió ampliada -> Crear entorns per primer cop.

Si no has creat mai cap entorn de Python i no estàs gaire familiaritzat amb aquest llenguatge recomanem que repassis pas per pas aquesta breu guia:

  • https://docs.google.com/document/d/1yM4IBaK1r6XV5yUgSNFbHTQRs71i6FxyI2007gOMd7Y/edit

Versió resumida -> Crear nous entorns.

Si ja saps com va venv aquí tens un resum de les comandes més útils.

Per què necessitem venv en cada projecte ?

Per què cada projecte pot necessitar diferents versions de Python i de les llibreries més comuns. A vegades noves versions de Python no són compatibles amb llibreries bioinformàtiques o de visualització.

Install virtual environment venv

$ sudo apt update
$ sudo apt install python3
$ sudo apt install python3-venv

Create new project folder:

mkdir m14prj1
cd m14prj1

Activate venv and install dependencies in the project:

$ python3 -m venv .venv
$ source .venv/bin/activate
(.venv) $ python3 -m pip install --upgrade pip

FAQ's -> Resoldre problemes comuns als venv.

Quan instal·les moltes biblioteques de Python i/o diverses actualitzacions del SO que afectin a aquestes, algunes poden deixar de funcionar per incompatibilitats de versions.

Quan això passi en un entorn que no sigui el de producció, pots esborrar tot el virtual env del teu projecte i generar-lo de nou.

  1. Primer, i molt important, desactiveu l’entorn:
deactivate
  1. Esborreu la carpeta oculta de l'entorn (suposem que es diu .venv):
rm -rf .venv 
  1. Reinstaleu el venv (repetir els passos de Versió resumida)

  2. Si torna a funcionar, feu una còpia de seguretat de les biblioteques i els seves versions en un txt:

(.venv) $ pip freeze > requirements.txt

Fixeu-vos que pip freeze genera un llistat de les bibiolteques instal·lades al .venv (carpeta) i les posa en un fitxer mitjançat l'operador >.

Aquesta pràctica és molt habitual i còmode.

  1. Aquesta còpia la podreu recuperar amb la comanda:
(.venv) $ pip install -r requirements.txt