TD 1 Biais de codons

Dimension: px
Commencer à balayer dès la page:

Download "TD 1 Biais de codons"

Transcription

1 Module LV348 Version enseignant TD 1 page 1/7 TD 1 Biais de codons Revu dernièrement par Mathilde Carpentier, Cyril Gallut et Joël Pothier Version du 15 janvier 2014 L objectif de ce TP est de prendre en main le langage python et de revoir quelques notions fondamentales sur l ADN (complémentarité, phase de lecture, traduction et usage du code génétique. La question biologique posée porte sur l usage du code génétique. 1 Les données Nous allons travailler sur le génome complet de la bactérie Escherichia coli. Nous allons télécharger son génome complet sur le site ftp du NCBI ftp://ftp.ncbi.nlm.nih.gov/. Ce serveur propose les génomes de très nombreux organismes. Il y a en effet maintenant environ 1000 génomes complets séquencés, et des millions de séquences dispersées. Différents fichiers sont proposés pour chaque génome, ils correspondent à différents formats des données. Nous allons utiliser le fichier.fna, c est-à-dire la séquence nucléique du génome complet au format fasta. L adresse du fichier est : ftp://ftp.ncbi.nlm.nih.gov/genomes/bacteria/escherichia_coli_ K_12_substr MG1655/NC_ fna 1 Le format fasta est un format texte pour les séquences nucléiques (ADN) ou protéiques. Une séquence de ce format comporte une ligne de description commençant par un ">" puis les lignes de la séquence. La fin d une séquence est atteinte lorsque la fin du fichier est atteinte ou lorsqu une autre séquence commence, c est-à-dire que l on rencontre une ligne commençant par un ">". La ligne de description comporte un identifiant de la séquence dans la banque d où elle provient. Exemple de séquence au format fasta : >NC_ : small RNA [gene=tff] [locus_tag=ecdh10b_0148] CGGACTTCCGATCCATTTCGTATACACAGACTGGACGGAAGCGACAATCTCACTTTGTGTAACAACACAC ACGTATCGGCACATATTCCGGGGTGCCCTTTGGGGTCGGTAATATGGGATACGTGGAGGCATAACC 2 Exercices Tous les exercices sont à faire en python. 2.1 Lecture des fichiers Ecrivez une fonction python permettant de lire un fichier fasta ne contenant qu une séquence et qui retourne la séquence lue sous la forme d une chaî,e de caractères.. Présentation de python : fonction, for, ouverture, fermeture et lecture de fichier. 1. Il vaut mieux ne pas prendre...escherichia_coli_k_12_substr DH10B/NC_ fna car elle contient un Y

2 Module LV348 Version enseignant TD 1 page 2/7 1 # lecture d un fichier au format fasta 2 # version 1: la sequence est 3 #recuperee sous la forme d une chaine de caracteres 4 # def readfasta(file): 6 infile=open(file, r ) 7 seq="" 8 name = "" 9 tmp=infile.readlines() 10 infile.close() #name =tmp[0][1:-1] # pour eliminer le > du debut et le \n de fin 13 for x in tmp[1:] : 14 seq=seq+x[:-1] #return (name,seq) # la fonction retourne le nom et la sequence 17 return seq # la fonction retourne la sequence./code/lecture.py 2.2 Le brin complémentaire Comme vous l avez peut être remarqué, il n y a qu un seul des deux brins d ADN dans le fichier fasta. Ecrivez une fonction python retournant le brin complémentaire d une séquence nucléique donnée en argument. Python : while et dictionnaire Bio : complémentarité des brins 1 # donne le complementaire inverse de la sequence seq 2 def complement(seq): 3 compl = { A : T, C : G, G : C, T : A } 4 cseq= 5 i = len(seq) -1 6 while i >= 0 : 7 cseq = cseq + compl.get(seq[i], N ) 8 i -= 1 9 return cseq./code/complementaire.py 2.3 Détection des CDS Ecrivez une fonction python qui retourne la liste de toutes les sous séquences commençant par le codon "start" et se terminant par un codon "stop" en phase (n oubliez pas le brin complémentaire). Ces séquences sont nommées CDS (Coding sequences). Note : Si plusieurs start sont trouvés dans la même phase de lecture avant un stop, le CDS débute au premier start ; les CDS peuvent se chevaucher (sur différentes phases, et éventuellement sur le brin d ADN complémentaire),

3 Module LV348 Version enseignant TD 1 page 3/7 Encore des dico, introduction des autres types énumérés : liste et tuple. Question plus bio : les phases de lectures, détection des CDS. Pour info, les ORFs sont les séquences entre 2 STOP en phase et non un START et un STOP C est le premier algo un peu compliqué, bien y réfléchir. 1 # Retourne la liste des orf de la seq 2 # 3 def findorf(seq): 4 start = ("ATG") 5 stop = ("TAA","TAG","TGA") 6 startlist = [-1,-1,-1] 7 orflist = [] 8 for i in range(len(seq)-2): 9 if seq[i:i+3] in start: 10 if startlist[i%3] == -1: 11 startlist[i%3] = i 12 elif seq[i:i+3] in stop: 13 if startlist[i%3]!= -1: 14 # Attention n inclus pas le stop 15 orflist.append(seq[startlist[i%3]:i]) 16 startlist[i%3] = return orflist./code/orf.py 2.4 Traduction Ecrivez une fonction python qui à partir d une séquence nucléique retourne la séquence protéique correspondante (en utilisant le code génétique à une lettre qui vous a été donné et qui se trouve au lien suivant : Cette fonction ne nous servira pas vraiment mais elle permet d introduire le code génétique et de parler de redondance. 1 # effectue la traduction de la sequence seq 2 def traduction(seq): 3 code = {"TTT":"F","TTC":"F","TTA":"L","TTG":"L","TCT":"S","TCC":"S", 4 "TCA":"S","TCG":"S","TAT":"Y","TAC":"Y","TAA":"*","TAG":"*", 5 "TGT":"C","TGC":"C","TGA":"*","TGG":"W","CTT":"L","CTC":"L", 6 "CTA":"L","CTG":"L","CCT":"P","CCC":"P","CCA":"P","CCG":"P", 7 "CAT":"H","CAC":"H","CAA":"Q","CAG":"Q","CGT":"R","CGC":"R", 8 "CGA":"R","CGG":"R","ATT":"I","ATC":"I","ATA":"I","ATG":"M", 9 "ACT":"T","ACC":"T","ACA":"T","ACG":"T","AAT":"N","AAC":"N", 10 "AAA":"K","AAG":"K","AGT":"S","AGC":"S","AGA":"R","AGG":"R", 11 "GTT":"V","GTC":"V","GTA":"V","GTG":"V","GCT":"A","GCC":"A", 12 "GCA":"A","GCG":"A","GAT":"D","GAC":"D","GAA":"E","GAG":"E", 13 "GGT":"G","GGC":"G","GGA":"G","GGG":"G"} 14 tradseq = 15 for i in range(0,len(seq)-2,3): 16 tradseq += code.get(seq[i:i+3], X )

4 Module LV348 Version enseignant TD 1 page 4/7 17 return tradseq./code/traduction.py 2.5 Usage des codons Ecrivez un programme python qui calcule la fréquence d utilisation de chaque codon pour chaque acide aminé d une liste de séquences nucléiques donnée en argument. Appliquez là aux CDS détectées. Par exemple, l usage des codons pour les cds détectées sur le génome d E. coli que vous avez téléchargé est A GCA: 22.47% GCC: 26.81% GCG: 33.03% GCT: 17.70% 1 # calcul la frequence de chaque codon par acide amine 2 def calcul_freq_codon_aa(lesseq): 3 freq_par_aa = { 4 "A":{"GCT":0,"GCC":0,"GCA":0,"GCG":0}, 5 "C":{"TGT":0,"TGC":0}, 6 "D":{"GAT":0,"GAC":0}, 7 "E":{"GAA":0,"GAG":0}, 8 "F":{"TTT":0,"TTC":0}, 9 "G":{"GGT":0,"GGC":0,"GGA":0,"GGG":0}, 10 "H":{"CAT":0,"CAC":0}, 11 "I":{"ATT":0,"ATC":0,"ATA":0}, 12 "K":{"AAA":0,"AAG":0}, 13 "L":{"CTT":0,"CTC":0,"CTA":0,"CTG":0,"TTA":0,"TTG":0}, 14 "M":{"ATG":0}, 15 "N":{"AAT":0,"AAC":0}, 16 "P":{"CCT":0,"CCC":0,"CCA":0,"CCG":0}, 17 "Q":{"CAA":0,"CAG":0}, 18 "R":{"AGA":0,"AGG":0}, 19 "R":{"CGT":0,"CGC":0,"CGA":0,"CGG":0}, 20 "S":{"TCT":0,"TCC":0,"TCA":0,"TCG":0,"AGT":0,"AGC":0}, 21 "T":{"ACT":0,"ACC":0,"ACA":0,"ACG":0}, 22 "V":{"GTT":0,"GTC":0,"GTA":0,"GTG":0}, 23 "W":{"TGG":0}, 24 "Y":{"TAT":0,"TAC":0}} 25 #1) compter les codons 26 codon={} 27 for s in lesseq: 28 for i in range(0,len(s)-2,3): 29 if s[i:i+3] in codon : 30 codon[s[i:i+3]]+=1 31 else : 32 codon[s[i:i+3]]=1 33 #2) Calculer les frequences par aa 34 for aa in freq_par_aa :

5 Module LV348 Version enseignant TD 1 page 5/7 35 freqtotal = # calcul la frequence cumulee des codon par aa pour normaliser 37 for cod in freq_par_aa[aa] : 38 freqtotal += codon[cod] 39 # calcul la frequence de chaque codon par acide amine 40 for cod in freq_par_aa[aa] : 41 freq_par_aa[aa][cod] = (codon[cod]/freqtotal)* return freq_par_aa./code/usage_codon.py 3 Bonus Ecrivez un programme python qui calcul le N c (effective number of codons) pour les CDS détectés. Ecrivez un programme python qui calcul le CAI (codon adaptation index) pour les CDS détectés. Comparez les valeurs. 3.1 Conclusion Observez la distribution globale des codons, la composition globale des séquences en acides aminés (faire des graphiques à l aide de gnuplot ou d un tableur). Sachant que le code génétique est redondant, nous voulons analyser si les codons codant pour un même acide aminé sont utilisés de manière aléatoire ou non. Calculez aussi l usage global des codons pour chaque acide aminé, c est-à-dire le pourcentage de chaque codon possible pour un acide aminé. L usage des codons vous semble-t-il uniforme pour chaque acides aminé? Question subsidiaire : comment vérifieriez-vous statistiquement cette hypothèse de non-uniformité? Faites le si possible. Pour conclure, il est conseillé de lire la page : d usage_du_code Toutes les fonctions python sont dans TD1_Corrections.py dans le répertoire code 1 #!/usr/bin/python 2 # -*- coding: utf-8 -*- 3 4 import getopt 5 import sys # permet la lecture des arguments de la ligne de commande. 6 import math # permet d utiliser les fonctions math (pow) 7 8 from ORF import * 9 from complementaire import * 10 from compoaa import * 11 from compte_codon import * 12 from lecture import * 13 from traduction import * 14 from usage_codon import * 15

6 Module LV348 Version enseignant TD 1 page 6/7 16 # ############################################################################### 17 ################################### main ####################################### 18 def main(): opt, args = getopt.getopt(sys.argv[1:], "h", ["help"]) 21 # for o, a in opt: 22 # if o in ( -h, --help ): 23 # print aide 24 # return 0 25 if len(sys.argv) <= 1: 26 print "Veuillez donner un fichier fasta en entree" 27 return # if len(sys.argv) == 1: 30 # print "Bienvenue. Veuillez indiquer le nom d une banque de sã c quences au format FASTA (nom du fichier ) :" 31 # banque_nom = raw_input() 32 # else: 33 # banque_nom = sys.argv[1] infile = sys.argv[1] # recupere le nom du fichier a partir de la ligne de commande #QUESTION 1 38 ns = readfasta(infile) # lit la sequence dans le fichier fasta 39 #QUESTION 2 40 c_ns = complement(ns) # calcul la sequence inverse complementaire 41 #QUESTION 3 42 orfs = findorf(ns) # recherche les orfs dans la sequence 43 orfs.extend(findorf(c_ns)) # recherche les orfs dans la sequence inverse complementaire 44 print "Nombre d orfs : direct, inverse" 45 print len(orfs) 46 #print orfs 47 #QUESTION 4 48 print "Exemple d une orf traduite" 49 print traduction(orfs[1]) 50 #QUESTION 5 51 freq_codon_aa=calcul_freq_codon_aa(orfs) 52 print print "Usage des codons par acide amine :" 56 for aa in sorted(freq_codon_aa.keys()): 57 tmp = 58 for codon in sorted(freq_codon_aa[aa]): 59 tmp = tmp + %s: %.2f%s % (codon, freq_codon_aa[aa][codon], % ) 60 print aa, tmp 61 print if name == " main ":

7 Module LV348 Version enseignant TD 1 page 7/7 65 sys.exit(main())./code/td1_correctionexos.py Il y a aussi des calculs de CAI dans /code/cai.py.

TD 3 Recherche de similarités dans une banque de séquences

TD 3 Recherche de similarités dans une banque de séquences Module LV348 Version enseignant TD 3 page 1/7 TD 3 Recherche de similarités dans une banque de séquences Revu dernièrement par Mathilde Carpentier, Cyril Gallut et Joël Pothier Version du 30 mars 2012

Plus en détail

Formation Python. Sandra Dèrozier & Franck Samson 13 Juin 2014

Formation Python. Sandra Dèrozier & Franck Samson 13 Juin 2014 Formation Python Sandra Dèrozier & Franck Samson 13 Juin 2014 Programme Présentation rapide de Python Présentation d Eclipse Gestion de fichiers Fonctions Utilisation des exceptions Expressions régulières

Plus en détail

Formation Python. Sandra Dèrozier & Franck Samson 29 Mars 2013

Formation Python. Sandra Dèrozier & Franck Samson 29 Mars 2013 Formation Python Sandra Dèrozier & Franck Samson 29 Mars 2013 Programme Présentation de Python Présentation d Eclipse Caractéristiques d un programme Python Variables Python Structures de contrôle et Boucles

Plus en détail

Programmer en python. Damien Nouvel. Damien Nouvel (Inalco) Python 1 / 12

Programmer en python. Damien Nouvel. Damien Nouvel (Inalco) Python 1 / 12 .. Programmer en python Damien Nouvel Damien Nouvel (Inalco) Python 1 / 12 Langages informatiques Langages compilés et/ou interprétés Du programme à l exécution : Code source. Compilation Programme binaire

Plus en détail

Par exemple, la première fenètre présentée ci-dessous peut fort bien se coder dans un shell Python interactif de la manière suivante :

Par exemple, la première fenètre présentée ci-dessous peut fort bien se coder dans un shell Python interactif de la manière suivante : Dans ce chapitre, nous réaliserons notre premier programme utilisant PyQt, et nous verrons comment ouvrir notre première fenêtre! Les lignes de codes sont présentées sous forme de scripts python, mais

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python Initiation à la programmation en Python Damien Vergnaud École Normale Supérieure 25 février 2015 Damien Vergnaud (École Normale Supérieure) Initiation à la programmation en Python 25 février 2015 1 / 18

Plus en détail

La Bioinformatique fonctionnelle Retrouver les Gènes

La Bioinformatique fonctionnelle Retrouver les Gènes Biologie moléculaire-2016 1 La Bioinformatique fonctionnelle Retrouver les Gènes Le séquençage est devenu chose tellement courante, que dans les dernières années nous avons obtenu les séquences complètes

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python Initiation à la programmation en Python Damien Vergnaud École Normale Supérieure 4 mars 2009 Damien Vergnaud (École Normale Supérieure) Initiation à la programmation en Python 4 mars 2009 1 / 25 Table

Plus en détail

Certificat Big Data Apprentissage TP1 Introduction à Python

Certificat Big Data Apprentissage TP1 Introduction à Python Certificat Big Data Apprentissage TP1 Introduction à Python Olivier Schwander 30 septembre 2015 1 / 31 Outline Environnement de travail Commentaires Installation Éditeur Expressions Structures de contrôle

Plus en détail

Chapitre 5 : Introduction à Python

Chapitre 5 : Introduction à Python Chapitre 5 : Introduction à Python Alexandre Blondin Massé Laboratoire d informatique formelle Université du Québec à Chicoutimi 5 février 2013 Cours 8STT105 Département d informatique et mathématique

Plus en détail

Stocker et récupérer de l Unicode dans PostgreSQL

Stocker et récupérer de l Unicode dans PostgreSQL Stocker et récupérer de l Unicode dans PostgreSQL Stéphane Bortzmeyer Première rédaction de cet article le 30 mai 2006. Dernière mise à jour le 9 novembre 2007 Ayant récemment

Plus en détail

Informatique TP4 : Manipulations de fichiers Manipulations de chaînes et de tableaux CPP 1A

Informatique TP4 : Manipulations de fichiers Manipulations de chaînes et de tableaux CPP 1A Informatique TP4 : Manipulations de fichiers Manipulations de chaînes et de tableaux CPP 1A Djamel Aouane, Frederic Devernay, Matthieu Moy Mars - avril 2015 1 Manipulations de fichiers Pour organiser des

Plus en détail

TP 1 - Utilisation de Python

TP 1 - Utilisation de Python TP 1 - Utilisation de Python L objectif de ce TP est d apprendre à faire réaliser des calculs et des tâches répétitives à un ordinateur. Pour faire cela, il est nécessaire de communiquer avec l ordinateur

Plus en détail

Programmation système orientée objet

Programmation système orientée objet Programmation système orientée objet Auteur: Olivier Laurent Contact: oli@aragne.com Organisation: Python Blanc Bleu Belge Date: 10/02/2005 Table des matières 1 Introduction 2 Créer l objet fichier 3 Lister

Plus en détail

TD2 - Ecriture binaire/héxadécimale d une entier. PCSI - Lycée Thiers

TD2 - Ecriture binaire/héxadécimale d une entier. PCSI - Lycée Thiers TD2 - Ecriture binaire/héxadécimale d une entier Ecriture d un nombre dans une base Ecriture d un nombre en base m > 1 Ecriture d un nombre en base 2 Ecriture d un nombre en base 16 Corrigé Corrigé Ecriture

Plus en détail

Cours 4 : Python, listes et boucles

Cours 4 : Python, listes et boucles Cours 4 : Python, listes et boucles Listes Les listes contiennent un tableau de données : patients = ["Jean Dupont", "Paul Dubois", "Marianne Y"] Il est possible de mélanger des types différents : chromosomes_recombines

Plus en détail

1 Définition et Appel d une fonction. V. Phan Luong. Cours 4 : Fonctions

1 Définition et Appel d une fonction. V. Phan Luong. Cours 4 : Fonctions Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 4 : Fonctions La construction de fonctions dans un langage de programmation permet aux

Plus en détail

INTRODUCTION À LA BIO-INFORMATIQUE

INTRODUCTION À LA BIO-INFORMATIQUE Biologie moléculaire-2016 1 INTRODUCTION À LA BIO-INFORMATIQUE Dans cette section, on désire vous donner une introduction sur l utilisation du site web du National Center for Biotechnology Information

Plus en détail

Les bases du langage Python

Les bases du langage Python Décembre 2006 Plan Les bases de Python 1 Les bases de Python Introduction La syntaxe de Python Les types de Python 2 Les fonctions Les classes Les exceptions 3 4 5 Pilot Systems Les bases de Python Introduction

Plus en détail

TP B43 Bio-Informatique 1. TP 1 : Les commandes LINUX et les instructions exécutables sous OCTAVE

TP B43 Bio-Informatique 1. TP 1 : Les commandes LINUX et les instructions exécutables sous OCTAVE TP B43 Bio-Informatique 1 TP 1 : Les commandes LINUX et les instructions exécutables sous OCTAVE 1) Quelques commandes LINUX - Ouvrir un terminal (menu Applications Accessoires Terminal) - Afficher la

Plus en détail

Algorithmie ISI301 TP 1 : Python et premiers algorithmes

Algorithmie ISI301 TP 1 : Python et premiers algorithmes Algorithmie ISI301 TP 1 : Python et premiers algorithmes 1 Python : apprentissage Pour avoir une vision plus large des différentes possibilités du langage Python, nous ne pouvons que vous conseiller d

Plus en détail

TD de statistique : introduction à R

TD de statistique : introduction à R TD de statistique : introduction à R Jean-Baptiste Lamy 11 octobre 2007 1 Introduction : pourquoi R? R est un logiciel pour l analyse statistique. C est un logiciel libre; il est disponible gratuitement

Plus en détail

TP Compilation Analyse lexicale

TP Compilation Analyse lexicale TP Compilation Analyse lexicale Eric Ramat ramat@lisic.univ-littoral.fr 9 mai 2014 Durée : 6 heures 1 Introduction Le but de cet TP est de vous donner les bases nécessaires afin de pouvoir écrire votre

Plus en détail

Plan. Comparaison de 2 séquences. Dotplot, alignement optimal Recherche de similarité. Alignement multiple. Phylogénie moléculaire

Plan. Comparaison de 2 séquences. Dotplot, alignement optimal Recherche de similarité. Alignement multiple. Phylogénie moléculaire Plan 1 Banques de données 2 Comparaison de 2 séquences Dotplot, alignement optimal Recherche de similarité 3 Alignement multiple l 4 Phylogénie moléculaire Recherche de similarité 1 séquence (Query) comparée

Plus en détail

Le prototype de la fonction main()

Le prototype de la fonction main() Le prototype de la fonction main() 1. Introduction...1 2. Paramètres et type de retour de la fonction main()...1 3. Exemple 1...2 4. La fonction exit() du C...2 5. Détecter le code de retour d un programme

Plus en détail

Python 3 Mémo. Pour permettre au programme en cours d exécution d afficher un texte ou un nombre on utilise la commande print.

Python 3 Mémo. Pour permettre au programme en cours d exécution d afficher un texte ou un nombre on utilise la commande print. Langage Python 3 Mémo I Entrées, Sorties et Variables 1 ) Sorties Pour permettre au programme en cours d exécution d afficher un texte ou un nombre on utilise la commande print. Exemples : print("bonjour!")

Plus en détail

1 Lecture de fichiers

1 Lecture de fichiers Programmation 1 Cours n 6 GB3, 2 nd semestre 2014-2015 Cours de Python Gilles Bernot 1 Lecture de fichiers Un fichier est une suite de caractères mémorisés sur le disque dur de la machine dans un endroit

Plus en détail

Cours 4 : Les dictionnaires en Python. Dictionnaires p.1

Cours 4 : Les dictionnaires en Python. Dictionnaires p.1 Cours 4 : Les dictionnaires en Python Dictionnaires p.1 Les types/objets en Python Numériques : Dictionnaires p.2 Les types/objets en Python Numériques : entiers Dictionnaires p.2 Les types/objets en Python

Plus en détail

Prédiction de gènes. Présentation du problème. Open Reading Frame. HMM (Modèles de Markov cachés) Fonctionnement Exemples Limites

Prédiction de gènes. Présentation du problème. Open Reading Frame. HMM (Modèles de Markov cachés) Fonctionnement Exemples Limites Présentation du problème Open Reading Frame Fonctionnement Exemples Limites Procaryotes versus eucaryotes Validation des résultats: 1) comparaison de séquences 2) utilisation de données statistiques HMM

Plus en détail

Autour du séquençage du génome. Pierrick Bouttier groupe Algorithmique de l'irem d'aix-marseille

Autour du séquençage du génome. Pierrick Bouttier groupe Algorithmique de l'irem d'aix-marseille Autour du séquençage du génome Pierrick Bouttier groupe Algorithmique de l'irem d'aix-marseille octobre 2011 Table des matières 1 Préambule 2 2 Recherche de régions codantes 3 2.1 Introduction..................................

Plus en détail

Exercices Perl. Master de Bioinformatique Université de Rouen

Exercices Perl. Master de Bioinformatique Université de Rouen Exercices Perl Master de Bioinformatique Université de Rouen 1 Exercice Écrire un programme Perl qui affiche les lignes de plus de 80 caractères lues sur l entrée standard. 2 Exercice Écrire un programme

Plus en détail

Python Notions de modularité. Valérie Bellynck (2009-2010), d après un diaporama d Alain Bozzi (2008), lui-même venant de celui de Bob Cordeau (2008)

Python Notions de modularité. Valérie Bellynck (2009-2010), d après un diaporama d Alain Bozzi (2008), lui-même venant de celui de Bob Cordeau (2008) Python Notions de modularité Valérie Bellynck (2009-2010), d après un diaporama d Alain Bozzi (2008), lui-même venant de celui de Bob Cordeau (2008) 1 Les sous-programmes sous-programme = suite nommée

Plus en détail

Algo & Prog, avec Python (L1-Sciences) TP n 1, Automne 2015

Algo & Prog, avec Python (L1-Sciences) TP n 1, Automne 2015 Algo & Prog, avec Python (L1-Sciences) TP n 1, Automne 2015 Travail sous Windows au 2 ème étage (CRIPS) Vous allez travailler sur des ordinateurs sous le système d exploitation Windows-XP. Peutêtre utilisez-vous

Plus en détail

La synthèse des protéines transcription code génétique traduction

La synthèse des protéines transcription code génétique traduction CEC André-Chavanne BIO 3 OS La synthèse des protéines transcription code génétique traduction I. La «Transcription» : de l ADN à l ARNm. L'adresse suivante permet d accéder à une ANIMATION sur la TRANSCRIPTION.

Plus en détail

Chapitre 10 Lire et écrire différents formats de fichiers de données dans Analyse. Temps estimé nécessaire à l acquisition..

Chapitre 10 Lire et écrire différents formats de fichiers de données dans Analyse. Temps estimé nécessaire à l acquisition.. Chapitre 10 Lire et écrire différents formats de fichiers de données dans Analyse. Temps estimé nécessaire à l acquisition.. 0 H 30 A la fin de ce chapitre, vous devez savoir page A10 - Faire l exercice

Plus en détail

Introduction à l algorithmique et à la programmation 2013-2014. Cyril Nicaud Cyril.Nicaud@univ-mlv.fr. Cours 1 / 5

Introduction à l algorithmique et à la programmation 2013-2014. Cyril Nicaud Cyril.Nicaud@univ-mlv.fr. Cours 1 / 5 Introduction à l algorithmique et à la programmation IUT 1ère année 2013-2014 Cyril Nicaud Cyril.Nicaud@univ-mlv.fr Cours 1 / 5 Déroulement du cours Organisation : 5 séances de 2h de cours 10 séances de

Plus en détail

Introduction à Python et Xcas/Giac

Introduction à Python et Xcas/Giac Chapitre 1 Introduction à Python et Xcas/Giac 1.1 Présentation, Installation et documentation Sur le site du jury du capes http://capes-math.org/index.php?id=epreuves-orales, on trouve un paquet python2.7

Plus en détail

Python et la Programmation fonctionnelle. Programmation fonctionnelle 3. Programmation fonctionnelle pure 4. Matthieu Amiguet

Python et la Programmation fonctionnelle. Programmation fonctionnelle 3. Programmation fonctionnelle pure 4. Matthieu Amiguet Python et la Programmation fonctionnelle Matthieu Amiguet 2009 2010 1 Programmation fonctionnelle? 2 3 Lambda expressions 4 5 Programmation fonctionnelle? Programmation fonctionnelle 3 L expression programmation

Plus en détail

Initiation à l algorithmique

Initiation à l algorithmique Informatique S1 Initiation à l algorithmique procédures et fonctions 1. Définition d une fonction Jacques TISSEAU Ecole Nationale d Ingénieurs de Brest Technopôle Brest-Iroise CS 73862-29238 Brest cedex

Plus en détail

Introduction à Python 2.x

Introduction à Python 2.x rev. 2015-01-23 Introduction à Python 2.x UE LV348 - Bioinformatique 2014-2015 N. Bredeche () Définitions 2 Python Un langage interprété De (très) nombreuses librairies Très utilisé dans de nombreux domaines

Plus en détail

Cours d informatique du 17/11/2009 A. Rappels sur les boucles

Cours d informatique du 17/11/2009 A. Rappels sur les boucles Cours d informatique du 17/11/2009 A. Rappels sur les boucles 1) Rappel sur les invariants de boucle : L invariant de boucle est un outil pour concevoir cette boucle. Il peut exister plusieurs invariants

Plus en détail

Programmation en Python - Cours 2 : Premiers programmes

Programmation en Python - Cours 2 : Premiers programmes Programmation en Python - Cours 2 : Premiers programmes 2013/2014 Diverses utilisations de python Utilisation en mode interactif Ecriture d un programme python Saisie de données par l utilisateur : input(),

Plus en détail

Série 2 Premiers programmes

Série 2 Premiers programmes Licence pro. GTSBD 2013-2014 Structures de données, langage Python Série 2 Premiers programmes Programmes avec des affectations, des lectures et des écritures Exo 2.1 Le problème de la machine qui rend

Plus en détail

TP05: Session et fichiers

TP05: Session et fichiers TP05: Session et fichiers Ce tp est la suite du TP04. Il faut donc finir le TP04 avant de faire le TP05. Le but de cette suite est de poursuivre la construction du site commencé, un site d affichage de

Plus en détail

Epidémiologie, l urne de Pólya, partie II

Epidémiologie, l urne de Pólya, partie II Epidémiologie, l urne de Pólya, partie II Se mettre par groupe de deux. Traiter la fiche dans l ordre. Un compte de rendu de TP devra être rendu avec les réponses écrites aux questions, les recherches

Plus en détail

Informatique TP1 : Découverte de Python CPP 1A

Informatique TP1 : Découverte de Python CPP 1A Informatique TP1 : Découverte de Python CPP 1A Romain Casati, Wafa Johal, Frederic Devernay, Matthieu Moy Avril - juin 2014 1 Découverte de l IDE : IDLE IDLE est un environnement de développement (Integrated

Plus en détail

Licence Sciences et Technologies Examen janvier 2010

Licence Sciences et Technologies Examen janvier 2010 Université de Provence Introduction à l Informatique Licence Sciences et Technologies Examen janvier 2010 Année 2009-10 Aucun document n est autorisé Les exercices peuvent être traités dans le désordre.

Plus en détail

TD 8 - Manipulation de Fichiers. Informatique MPSI/PCSI - Lycée Thiers

TD 8 - Manipulation de Fichiers. Informatique MPSI/PCSI - Lycée Thiers TD 8 - Manipulation de Fichiers Informatique MPSI/PCSI - Lycée Thiers Exercice 1 / / Exercice 1 : / En python, créer un fichier essai.txt (à l aide de la commande f = open( essai.txt, w ), dans lequel

Plus en détail

CHAPITRE 3 LA SYNTHESE DES PROTEINES

CHAPITRE 3 LA SYNTHESE DES PROTEINES CHAITRE 3 LA SYNTHESE DES ROTEINES On sait qu un gène détient dans sa séquence nucléotidique, l information permettant la synthèse d un polypeptide. Ce dernier caractérisé par sa séquence d acides aminés

Plus en détail

Projet TAL : traduction français-sms

Projet TAL : traduction français-sms Projet TAL : traduction français-sms 1 Objectif L objectif de ce projet est de concevoir un logiciel permettant de traduire un texte écrit en langage SMS vers le français. La traduction sera effectuée

Plus en détail

CORRECTION DES EXERCICES DE GENETIQUE SYNTHESE PROTEIQUE : P 136-137

CORRECTION DES EXERCICES DE GENETIQUE SYNTHESE PROTEIQUE : P 136-137 CORRECTION DES EXERCICES DE GENETIQUE SYNTHESE PROTEIQUE : P 136-137 Exercice 1 p 171 : définir en une phrase les mots suivants Polypeptide : chaine de plusieurs acides aminés. Séquence protéinique : séquence

Plus en détail

Révisions : programmation en langage python

Révisions : programmation en langage python Révisions : programmation en langage python Retrouvez tout le cours de première année (et plus) sur le site : http://pcsi.kleber.free.fr/ipt/index.html 1. Modules Les modules sont des bibliothèques de

Plus en détail

Téléchargé gratuitement sur www.doc-solus.fr.

Téléchargé gratuitement sur www.doc-solus.fr. Mines Informatique PC 2015 Énoncé 1/10 ÉCOLE DES PONTS PARISTECH. SUPAERO (ISAE), ENSTA PARISTECH, TELECOM PARISTECH, MINES PARISTECH MINES DE SAINT-ÉTIENNE, MINES NANCY, TÉLÉCOM BRETAGNE, ENSAE PARISTECH

Plus en détail

Ricco Rakotomalala http://eric.univ-lyon2.fr/~ricco/cours/cours_programmation_python.html. R.R. Université Lyon 2

Ricco Rakotomalala http://eric.univ-lyon2.fr/~ricco/cours/cours_programmation_python.html. R.R. Université Lyon 2 Ricco Rakotomalala http://eric.univ-lyon2.fr/~ricco/cours/cours_programmation_python.html 1 Découpage des programmes PROCÉDURES ET FONCTIONS 2 Généralités sur les fonctions et les modules sous Python Pourquoi

Plus en détail

Python pour le calcul scientifique

Python pour le calcul scientifique Petit tour d horizon Laboratoire de Mathématiques d Orsay Le langage Python 1 développé en 1989 par Guido van Rossum 2 open-source 3 portable 4 orienté objet 5 dynamique 6 extensible 7 support pour l intégration

Plus en détail

Informatique (INFO-F-206) Exemple de questionnaire d examen

Informatique (INFO-F-206) Exemple de questionnaire d examen Informatique (INFO-F-206) Exemple de questionnaire d examen Jean Cardinal Année académique 2010 2011 Consignes : 1. Les réponses doivent figurer sur des feuilles distinctes, indiquant le numéro de la question,

Plus en détail

Prédiction des gènes chez les procaryotes.

Prédiction des gènes chez les procaryotes. Prédiction des gènes chez les procaryotes Hélène OUZE touzet@lifl.fr Deux approches 1. prédiction par similarité ES BLSN BLSX traduction suivant les 6 cadres de lecture 2. prédiction de novo, ou ab initio

Plus en détail

Algorithmique et Programmation 2 LMI 1 Semestre 2 Cours 2 La séquence et l alternative

Algorithmique et Programmation 2 LMI 1 Semestre 2 Cours 2 La séquence et l alternative Algorithmique et Programmation 2 LMI 1 Semestre 2 Cours 2 La séquence et l alternative 2 janvier 2009 1 Les structures de contrôle En Scheme, le programmation se fait par composition de fonctions, et même

Plus en détail

SAS Cours 1 : Gestion des données

SAS Cours 1 : Gestion des données SAS Cours 1 : Gestion des données Nous avons pris le parti ici de ne vous donner que peu de conseils et d informations. Vous trouverez tout ce dont vous aurez besoin dans la documentation SAS (que vous

Plus en détail

18 h CM (F. Maurel) + 16 h TD/TP (F. Maurel / T. Roy)

18 h CM (F. Maurel) + 16 h TD/TP (F. Maurel / T. Roy) Présentation cours 18 h CM (F. Maurel) + 16 h TD/TP (F. Maurel / T. Roy) 5/6 h Python 2,5/2 h Introduction à l'ihm (démarche participative centrée utilisateur) + Mise en place des groupes 2,5/2 h : Méthodes

Plus en détail

Python langage de programmation

Python langage de programmation Initiation à la programmation avec Python langage de programmation Valérie Bellynck (2009), d après un diaporama d Alain Bozzi (2008), lui-même venant de celui de Bob Cordeau (2008) 1 Langage de Programmation

Plus en détail

COMPRESSION/DECOMPRESSION D UNE IMAGE BINAIRE

COMPRESSION/DECOMPRESSION D UNE IMAGE BINAIRE Le 29 novembre 2013, Rapport projet TS114 COMPRESSION/DECOMPRESSION D UNE IMAGE BINAIRE Par Marc BELLINGER et Antoine BINON. 2eme année Télécommunications. 1 Introduction : Le but de ce projet est d implémenter

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python I-onventions Initiation à la programmation en Python Une commande Python sera écrite en caractère gras. Exemples : print("bonjour") max=input("nombre maximum autorisé :") Le résultat de l'exécution d'un

Plus en détail

Principes de la programmation impérative

Principes de la programmation impérative Séquence d instructions Variables et types Types élaborés Procédures, arguments Gestion de la mémoire Langage compilé, interprété Principes de la programmation impérative Séquence d instructions Variables

Plus en détail

Sujet Projets 2 nd Semestre

Sujet Projets 2 nd Semestre Sujet Projets 2 nd Semestre Seuls les appels systèmes vus en cours sont autorisés. L usage d autres fonctions doit impérativement être validé par l enseignant. La date d ouverture pour l assignation de

Plus en détail

TD n 1 - Tests de couverture en langage C

TD n 1 - Tests de couverture en langage C ENSEIRB Année 201-2014 ème année IT06 TD n 1 - Tests de couverture en langage C Résumé : Cette feuille compare les différentes techniques de test structurel et fonctionnel, ainsi que les aspects du test

Plus en détail

Informatique SV L2 TP 1

Informatique SV L2 TP 1 Informatique SV L2 TP 1 1 Prise en main de Python 1.1 Démarrer l'interpréteur Python Pour exécuter du code Python, il faut ouvrir l'interpréteur Python. Pour cela : Ouvrez la console : Menu UCP, Console

Plus en détail

Programmation en Python - Cours 2 : Premiers programmes. MPSI - Lycée Thiers

Programmation en Python - Cours 2 : Premiers programmes. MPSI - Lycée Thiers Programmation en Python - Cours 2 : Premiers programmes Diverses utilisations de python Utilisation en mode interactif Ecriture d un programme python Utilisation en mode interactif Ecriture d un programme

Plus en détail

Baccalauréat général Sciences de la vie et de la Terre

Baccalauréat général Sciences de la vie et de la Terre Baccalauréat général Sciences de la vie et de la Terre Épreuve obligatoire série S Partie 1 (5 points) Thème 1-: Expression, stabilité, variation du patrimoine génétique. Sujet : On cherche à montrer,

Plus en détail

Amphi de rattrapage python

Amphi de rattrapage python Amphi de rattrapage python 20/10/2005 Nom et mail des participants Vincent: vincent.maury@student.ecp.fr ; Marc: gille_marc@hotmail.fr ; M4uD!T : remy.ritchen@student.ecp.fr Les types de variables Les

Plus en détail

Examen Programmation ENSAE première année 2008 (rattrapage) Examen écrit (1 heure) Tous documents autorisés.

Examen Programmation ENSAE première année 2008 (rattrapage) Examen écrit (1 heure) Tous documents autorisés. Examen Programmation ENSAE première année 2008 (rattrapage) Examen écrit (1 heure) Tous documents autorisés. 1 0.0.1 Suite récurrente (Fibonacci) * Réécrire la fonction u de façon à ce qu elle ne soit

Plus en détail

Systèmes d'informations

Systèmes d'informations Systèmes d'informations C'est un ensemble d'outils pour stocker / gérer / diffuser des informations / des données Le stockage : Bases de données + SGDBR La gestion : Saisie, Mise à jour, Contrôle La diffusion

Plus en détail

GLO-1900 Introduction à la programmation avec Python

GLO-1900 Introduction à la programmation avec Python GLO-1900 Introduction à la programmation avec Python Outils et normes de programmation Marc Parizeau (automne 2010) Marc Parizeau, Département de génie électrique et de génie informatique Systèmes d exploitation

Plus en détail

Fiche technique : utilisation d Anagène (logiciel d étude des données moléculaires).

Fiche technique : utilisation d Anagène (logiciel d étude des données moléculaires). Fiche technique : utilisation d Anagène (logiciel d étude des données moléculaires). Objectifs de la fiche : 1. Ouvrir des séquences (ADN ou protéine). 2. Changer de règle de numérotation & faire apparaître

Plus en détail

Algorithmique avancée en Python TDs

Algorithmique avancée en Python TDs Algorithmique avancée en Python TDs Denis Robilliard sept. 2014 1 TD 1 Révisions 1. Ecrire un programme qui saisit un entier, et détermine puis affiche si l entier est pair où impair. 2. Ecrire un programme

Plus en détail

Cours Info - 8. Fonctions & Modularité. D.Malka MPSI 2015-2016. D.Malka Cours Info - 8 MPSI 2015-2016 1 / 40

Cours Info - 8. Fonctions & Modularité. D.Malka MPSI 2015-2016. D.Malka Cours Info - 8 MPSI 2015-2016 1 / 40 Cours Info - 8 Fonctions & Modularité D.Malka MPSI 2015-2016 D.Malka Cours Info - 8 MPSI 2015-2016 1 / 40 Sommaire Sommaire 1 Intérêt des fonctions 2 Déclaration d une fonction 3 Appel d une fonction 4

Plus en détail

Projet de Programmation Fonctionnelle

Projet de Programmation Fonctionnelle Projet de Programmation Fonctionnelle L objectif de ce projet est de concevoir, en Objective Caml, un évaluateur pour le langage mini-ml (un sous ensemble du langage Objective Caml). Votre programme devra

Plus en détail

Programmation sous Python

Programmation sous Python Erwan Biland Lycée Chateaubriand - BCPST 1C Année scolaire 2014-2015 Objects du Utilisation de la console (shell ) Python calculatrice Fichier machin.py Manipulation des variables Création/affectation,

Plus en détail

LES FICHIERS DE DONNEES STRUCTURES EN ENREGISTREMENTS...

LES FICHIERS DE DONNEES STRUCTURES EN ENREGISTREMENTS... ALGO Ch 6 Fichiers I. INTRODUCTION... 1 A. NOTION DE FICHIERS... 1 B. STRUCTURATION DES DONNEES DANS UN FICHIER... 1 1. Fichiers NON structurés... 1 2. Fichiers structurés... 2 C. RESUME DES CARACTERISTIQUES

Plus en détail

DS Informatique Scientifique

DS Informatique Scientifique DUT Mesures Physiques - semestre S'2 DS Informatique Scientifique 10 décembre 2012 0. Directives Durée : 2h Tout système électronique interdit (calculatrice, téléphone, etc). Téléphone portable éteint

Plus en détail

Les tableaux. Chapitre 3

Les tableaux. Chapitre 3 Chapitre 3 Les tableaux 3.1 Généralités Les tableaux en PERL sont identifiés par le symbole @ à l image du $ pour les variables. Comme ces dernières, les tableaux ne sont pas typés et un même tableau peut

Plus en détail

Sujet 17 : Exploitation de données financières de Google Finance en C#

Sujet 17 : Exploitation de données financières de Google Finance en C# Amsellem Ari Pour le 01/06/11 Ohayon Alexandre Gueguen Tristan Sujet 17 : Exploitation de données financières de Google Finance en C# Introduction : Il convient tout d abord de signaler que le titre de

Plus en détail

Exercices d'introduction à Unix (1)

Exercices d'introduction à Unix (1) Exercices d'introduction à Unix (1) 1) Première connexion 1. connectez vous à une session Unix en indiquant votre identifiant (login) et votre mot de passe (Password). 2. changer votre mot de passe avec

Plus en détail

LAMY Jean Baptiste 1/2007 TD/cours 2 : programmation Python

LAMY Jean Baptiste 1/2007 TD/cours 2 : programmation Python Cours 5 : Une fonction est un morceau de programme que l'on exécute ainsi : resultat = nom_de_la_fonction(paramètre1, paramètre2,...) Nous avons déjà rencontré des fonctions : chaine_entree = raw_input(message)

Plus en détail

Programmation orientée objets avec Python

Programmation orientée objets avec Python Judicaël Courant 2013-05-06 Lycée La Martinière-Monplaisir Plan 1 Principes 1.1 POO : késako? 1.2 Apport sur le plan algorithmique 1.3 La quête du Graal Paradigme procédural Paradigme orienté objets 2

Plus en détail

Introduction au langage C

Introduction au langage C Organisation du cours Introduction au langage C Premier cours Notions générales Aurélien Max aurelien.max@limsi.fr 12 séances de cours de 1h: mercredi 16-17h, salle A203 12 séances de TD de 1h: mercredi

Plus en détail

Formation Unix/Linux (9) Introduction à la programmation C sous Unix

Formation Unix/Linux (9) Introduction à la programmation C sous Unix Formation Unix/Linux (9) Introduction à la programmation C sous Unix Olivier BOEBION Mars 2004 1 Le langage C Introduire un langage de développement dans des travaux pratiques sur un système d exploitation

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de

Plus en détail

1 Description générale de VISFIELD

1 Description générale de VISFIELD Guide d utilisation du logiciel VISFIELD Yann FRAIGNEAU LIMSI-CNRS, Bâtiment 508, BP 133 F-91403 Orsay cedex, France 11 décembre 2012 1 Description générale de VISFIELD VISFIELD est un programme écrit

Plus en détail

Utilisation de SVN. 1 Introduction. 2 Architecture. 3 Références et aide en ligne

Utilisation de SVN. 1 Introduction. 2 Architecture. 3 Références et aide en ligne N7 1IMA TECHNOLOGIE OBJET TP 3 18/02/2015 (Séance TP 2) Objectifs : Comprendre le principe d un outil de gestion de configuration Savoir utiliser SVN (subversion) 1 Introduction Pour travailler en groupe

Plus en détail

Sauf mention contraire, le contenu de cet ouvrage est publié sous la licence : Creative Commons BY-NC-SA 2.0 La copie de cet ouvrage est autorisée

Sauf mention contraire, le contenu de cet ouvrage est publié sous la licence : Creative Commons BY-NC-SA 2.0 La copie de cet ouvrage est autorisée Sauf mention contraire, le contenu de cet ouvrage est publié sous la licence : Creative Commons BY-NC-SA 2.0 La copie de cet ouvrage est autorisée sous réserve du respect des conditions de la licence Texte

Plus en détail

Le pcduino : Programmer les broches E/S du pcduino en sortie avec Python tout en utilisant les instructions Arduino! Intro.

Le pcduino : Programmer les broches E/S du pcduino en sortie avec Python tout en utilisant les instructions Arduino! Intro. Le pcduino : Programmer les broches E/S du pcduino en sortie avec Python tout en utilisant les instructions Arduino! Par X. HINAULT Juin 2013 MAJ : Juin 2013 www.mon-club-elec.fr Intro Vous devez avoir

Plus en détail

Introduction au Java Development Kit Et quelques instructions en Java. 1 Création des répertoires d accueil des programmes Java

Introduction au Java Development Kit Et quelques instructions en Java. 1 Création des répertoires d accueil des programmes Java HLIN406 - Janvier 2015 Le Java Development Kit offre un ensemble d outils de développement d applications Java. Pour utiliser ces outils, JDK ne propose pas d interface utilisateur, on doit donc écrire

Plus en détail

Convertisseur de monnaies

Convertisseur de monnaies Convertisseur de monnaies La logique algorithmique en première STG Propriétés Intitulé long Formation concernée Matière Notions Présentation Pré-requis Outils Mots-clés Auteur(es) Version 1.0 Description

Plus en détail

xkcd Le langage Python La GUI tkinter Christian Nguyen Département d informatique Université de Toulon et du Var 2012-2013

xkcd Le langage Python La GUI tkinter Christian Nguyen Département d informatique Université de Toulon et du Var 2012-2013 La GUI tkinter Département d informatique Université de Toulon et du Var 2012-2013 Présentation Python est né en 1990, son concepteur est De Guido Van Rossum(Pays Bas). Il présente les caractéristiques

Plus en détail

THEME 1 A EXPRESSION, STABILITE ET VARIATION DU PATRIMOINE GENETIQUE

THEME 1 A EXPRESSION, STABILITE ET VARIATION DU PATRIMOINE GENETIQUE THEME 1 A EXPRESSION, STABILITE ET VARIATION DU PATRIMOINE GENETIQUE CHAPITRE 3 L EXPRESSION DU PATRIMOINE GENETIQUE I. LA RELATION GENES-PROTEINES Les protéines interviennent dans le fonctionnement d

Plus en détail

Cours 3 : Python, les conditions

Cours 3 : Python, les conditions Cours 3 : Python, les conditions Conditions Permet d'exécuter des ordres dans certaines conditions : if condition1: code exécuté si condition1 est vraie code exécuté si condition1 est vraie... elif condition2:

Plus en détail

Juin 2014 Loudun. Apprendre à programmer avec Python

Juin 2014 Loudun. Apprendre à programmer avec Python Juin 2014 Loudun Apprendre à programmer avec Python 1 Table des matières I Dialoguer avec la machine........................................ 5 I.1 Afficher un message : La fonction print...........................

Plus en détail