Module

Depuis l'été 2015, le cluster MBB et celui de l'ISE-M sont passés sous module pour gérer python (voir lien). Il faut donc penser à précéder votre ligne de commande par module load python... dans votre script de soumission SGE (points de suspension correspondants à la version désirée). De même, les packages doivent être installés dans votre environnement utilisateur (home).

Utilisation Biopython sur le cluster

Biopython est installé sur la version 2.6.7 de python qui se trouve dans /opt/rocks/bin/python.

Il faut utiliser cette version directement « /opt/rocks/bin/python » ou modifier le chemin de recherche des modules pour utiliser la version par défaut de python : export PYTHONPATH=/opt/rocks/lib/python2.6/site-packages/

$/opt/rocks/bin/python
Python 2.4.2 (#1, Jun 18 2009, 04:05:48)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-44)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from Bio.Seq import Seq
>>> from Bio.Alphabet.IUPAC import unambiguous_dna
>>> new_seq = Seq('GATCAGAAG', unambiguous_dna)
>>> new_seq[0:2]
Seq('GA', IUPACUnambiguousDNA())
>>> new_seq.translate()
Seq('DQK', HasStopCodon(IUPACProtein(), '*'))
>>>

Bloc vide

En python un bloc ne peut jamais être vide, aussi dispose-t-on du mot-clé "pass":

if a > 0 :
    pass
else :
    print "et voilà"

Version de python

2 versions sont disponibles au travers de module en plus de la version système déjà installée dans /usr/bin/python

/usr/bin/python -V
> Python 2.6.6
module avail

Vous pouvez ensuite charger la version que vous souhaitez ainsi:

module load python2.7
module load python3.3

Et l'enlever ainsi:

module unload python3.3

Pour un script de soumission, n'oubliez pas d'insérer ce type de ligne avant de lancer votre code en python. De plus, regardez les sources. Parfois l'entête du fichier python appelle directement une version de python comme par exemple "#!/usr/bin/python" qui cargera la version 2.6.

Installer un module Python

En python, vous pouvez télécharger les sources d'un package et lancer:

python setup.py install --user

Utiliser une autre version de python

Si les versions disponibles dans module ou depuis le système ne suffisent pas, vous pouvez voir comment utiliser pyenv:

http://amaral-lab.org/resources/guides/pyenv-tutorial