[PDF] cours-python.pdf Mar 22 2018 Ce cours





Previous PDF Next PDF



IV.2. Les évaluations fin CP

Jun 10 2003 1) Remarques. Les exercices proposés ne constituent ni un examen



Sciences de gestion - Synthèse de cours exercices corrigés

Au cours de sa carrière il a été Senior Economist chez Wharton Econometric Forecasting. Associates. Il a été fréquemment maître de conférences invité à l' 



Cours de probabilités et statistiques

par la machine. C? Exercice 9 — Dans une jardinerie : 25% des plantes ont moins d'un an 60% ont de 1. `a 2 



cours-python.pdf

Mar 22 2018 Ce cours a été conçu à l'origine pour les étudiants débutants en programmation Python des filières de biologie et de.



fondmath1.pdf

Licence L1 parcours Maths-info puis cliquer sur Fondamentaux des Il est possible de trouver des cours et des exercices dans de nombreux ouvrages dispo-.



Exercices corrigés

Les scripts du cours. Cours no 1 : « Premiers pas en Python ». 1. Affectez les variables temps et distance par les valeurs 6.892 et 19.7.



Résumé du Cours de Statistique Descriptive

Dec 15 2010 http://cran.r-project.org/doc/contrib/Paradis-rdebuts_fr.pdf ... 1 Variables



Exercices de niveau A1 Vous trouverez les corrigés à la fin de cette

Exercice 1. Qui suis-je ? Choisissez la bonne réponse. 1. Je vous coupe les cheveux. a. L'hôtesse d'accueil. 2. Je vous soigne si vous avez mal aux dents.



Loutil wims

Base RAISonnée d'Exercices Des documents (au sens de WIMS) et des feuilles d'exercices ... Examen 1. Nb étudiants. 158 étudiants. 769 4



Exercices corrigés dAnalyse financière

L'analyse de la structure financière et de l'équilibre financier. Thème 5 Le bilan et l'annexe. 81. 1 – Classement des comptes d'actif et de passif.

Cours de Python

Introduction à la programmation Python pour la biologie

https://python.sdv.univ-paris-diderot.fr/Patrick FuchsetPierre Poulainprénom [point] nom [arobase] u-paris [point] fr

version du 1 eraoût 2023

Université Paris Cité, France

Ce document est sous licence

Creative Commons Attribution - Partage dans les Mêmes Conditions 3.0 France (CC BY-SA 3.0 FR)

Table des matières

Avant-propos7

Quelques mots sur l"origine de ce cours

7

Remerciements

7

Le livre

7

1 Introduction9

1.1 C"est quoi Python?

9

1.2 Conseils pour installer et configurer Python

9

1.3 Notations utilisées

10

1.4 Introduction aushell. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

1.5 Premier contact avec Python

11

1.6 Premier programme

12

1.7 Commentaires

12

1.8 Notion de bloc d"instructions et d"indentation

13

1.9 Autres ressources

13

2 Variables14

2.1 Définition

14

2.2 Les types de variables

14

2.3 Nommage

15

2.4 Écriture scientifique

15

2.5 Opérations

16

2.6 La fonctiontype(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17

2.7 Conversion de types

17

2.8 Note sur la division de deux nombres entiers

18

2.9 Note sur le vocabulaire et la syntaxe

18

2.10 Minimum et maximum

18

2.11 Exercices

19

3 Affichage20

3.1 La fonctionprint(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20

3.2 Écriture formatée

21

3.3 Écriture scientifique

24

3.4 Ancienne méthode de formatage des chaînes de caractères

24

3.5 Note sur le vocabulaire et la syntaxe

26

3.6 Exercices

26

4 Listes28

4.1 Définition

28

4.2 Utilisation

28

4.3 Opération sur les listes

28

4.4 Indiçage négatif

29

4.5 Tranches

29

4.6 Fonctionlen(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30

2

Table des matièresTable des matières4.7 Les fonctionsrange()etlist(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30

4.8 Listes de listes

31

4.9 Minimum, maximum et somme d"une liste

31

4.10 Exercices

32

5 Boucles et comparaisons33

5.1 Bouclesfor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33

5.2 Comparaisons

36

5.3 Boucleswhile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37

5.4 Exercices

37

6 Tests42

6.1 Définition

42

6.2 Tests à plusieurs cas

42

6.3 Importance de l"indentation

43

6.4 Tests multiples

43

6.5 Instructionsbreaketcontinue. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44

6.6 Tests de valeur sur desfloats. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45

6.7 Exercices

45

7 Fichiers50

7.1 Lecture dans un fichier

50

7.2 Écriture dans un fichier

52

7.3 Ouvrir deux fichiers avec l"instructionwith. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .53

7.4 Note sur les retours à la ligne sous Unix et sous Windows

53

7.5 Importance des conversions de types avec les fichiers

54

7.6 Du respect des formats de données et de fichiers

54

7.7 Exercices

54

8 Modules57

8.1 Définition

57

8.2 Importation de modules

57

8.3 Obtenir de l"aide sur les modules importés

58

8.4 Quelques modules courants

60

8.5 Modulerandom: génération de nombres aléatoires. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

8.6 Modulesys: passage d"arguments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

8.7 Moduleos: interaction avec le système d"exploitation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

8.8 Exercices

63

9 Fonctions66

9.1 Principe et généralités

66

9.2 Définition

67

9.3 Passage d"arguments

68

9.4 Renvoi de résultats

68

9.5 Arguments positionnels et arguments par mot-clé

68

9.6 Variables locales et variables globales

70

9.7 Principe DRY

73

9.8 Exercices

74

10 Plus sur les chaînes de caractères78

10.1 Préambule

78

10.2 Chaînes de caractères et listes

78

10.3 Caractères spéciaux

79

10.4 Préfixe de chaîne de caractères

79

10.5 Méthodes associées aux chaînes de caractères

80

10.6 Extraction de valeurs numériques d"une chaîne de caractères

82
Cours de Python / Université Paris Cité / UFR Sciences du Vivant3

Table des matièresTable des matières10.7 Conversion d"une liste de chaînes de caractères en une chaîne de caractères. . . . . . . . . . . . . . . . . . 82

10.8 Exercices

83

11 Plus sur les listes88

11.1 Méthodes associées aux listes

88

11.2 Construction d"une liste par itération

90

11.3 Test d"appartenance

91

11.4 Copie de listes

91

11.5 Liste de compréhension

92

11.6 Exercices

93

12 Plus sur les fonctions96

12.1 Appel d"une fonction dans une fonction

96

12.2 Fonctions récursives

97

12.3 Portée des variables

98

12.4 Portée des listes

99

12.5 Règle LGI

10 0

12.6 Recommandations

101

12.7 Exercices

10 2

13 Containers, dictionnaires, tuples etsets104

13.1 Containers

10 4

13.2 Dictionnaires

107

13.3 Tuples

111

13.4Setsetfrozensets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .116

13.5 Récapitulation des propriétés des containers

119

13.6 Dictionnaires etsetsde compréhension. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

13.7 Modulecollections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120

13.8 Exercices

12 0

14 Création de modules123

14.1 Pourquoi créer ses propres modules?

123

14.2 Création d"un module

123

14.3 Utilisation de son propre module

124

14.4 Lesdocstrings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .124

14.5 Visibilité des fonctions dans un module

125

14.6 Module ou script?

125

14.7 Exercice

12 6

15 Bonnes pratiques en programmation Python

127

15.1 De la bonne syntaxe avec la PEP 8

127

15.2 Lesdocstringset la PEP 257. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

15.3 Outils de contrôle qualité du code

133

15.4 Organisation du code

134

15.5 Conseils sur la conception d"un script

136

15.6 Pour terminer : la PEP 20

136

16 Expressions régulières etparsing138

16.1 Définition et syntaxe

138

16.2 Quelques ressources en ligne

140

16.3 Le modulere. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .140

16.4 Exercices

142

4Cours de Python / Université Paris Cité / UFR Sciences du Vivant

Table des matièresTable des matières17 Quelques modules d"intérêt en bioinformatique145

17.1 ModuleNumPy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .145

17.2 ModuleBiopython. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .158

17.3 Modulematplotlib. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .160

17.4 Modulepandas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .164

17.5 Un exemple plus complet

168

17.6 Exercices

17 4

18 Jupyter et ses notebooks179

18.1 Installation

179

18.2 Lancement de Jupyter et création d"un notebook

179

18.3 Le format Markdown

182

18.4 Des graphiques dans les notebooks

184

18.5 Lesmagic commands. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .187

18.6 JupyterLab

18 7

19 Avoir la classe avec les objets191

19.1 Construction d"une classe

191

19.2 Espace de noms

202

19.3 Polymorphisme

205

19.4 Héritage

207

19.5 Accès et modifications des attributs depuis l"extérieur

212

19.6 Bonnes pratiques pour construire et manipuler ses classes

216

19.7 Exercices

221

20 Fenêtres graphiques etTkinter222

20.1 Utilité d"une GUI

222

20.2 Quelques concepts liés à la programmation graphique

223

20.3 Notion de fonctioncallback. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .223

20.4 Prise en main du moduleTkinter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .225

20.5 Construire une applicationTkinteravec une classe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226

20.6 Lewidget canvas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .227

20.7 Pour aller plus loin

232

20.8 Exercices

237

21 Remarques complémentaires240

21.1 Différences Python 2 et Python 3

240

21.2 Gestion des exceptions

242

21.3 Shebang et /usr/bin/env python3

245

21.4 Passage d"arguments avec*argset**kwargs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .245

21.5 Un peu de transformée de Fourier avecNumPy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .247

21.6 Sauvegardez votre historique de commandes

247

22 Mini-projets249

22.1 Description des projets

249

22.2 Accompagnement pas à pas

250

22.3 Scripts de correction

264
A Quelques formats de données rencontrés en biologie 266

A.1 FASTA

266

A.2 GenBank

268

A.3 PDB

26 9

A.4 Format XML, CSV et TSV

275
Cours de Python / Université Paris Cité / UFR Sciences du Vivant5 Table des matièresTable des matièresB Installation de Python280 B.1 Que recommande-t-on pour l"installation de Python? 280

B.2 Installation de Python avec Miniconda

280
B.3 Utilisation de conda pour installer des modules complémentaires 290

B.4 Choisir un bon éditeur de texte

293
B.5 Comment se mettre dans le bon répertoire dans le shell 295

B.6 Python web et mobile

298

6Cours de Python / Université Paris Cité / UFR Sciences du Vivant

Avant-propos

Quelques mots sur l"origine de ce cours

Ce cours a été conçu à l"origine pour les étudiants débutants en programmation Python des filières de biologie et de

biochimie de l"université Paris Diderot - Paris 7, devenue Université Paris Cité

1; et plus spécialement pour les étudiants du

master Biologie Informatique.

Ce cours est basé sur la version 3 de Python, version recommandée par la communauté scientifique. Des références à

l"ancienne version, Python 2, seront néanmoins régulièrement apportées. Si vous relevez des erreurs à la lecture de ce document, merci de nous les signaler.

Le cours est disponible en version HTML

2et PDF3.

Remerciements

Un grand merci à Sander

4duCentre for Molecular and Biomolecular Informaticsde Nijmegen aux Pays-Bas pour la

toute première version

5de ce cours qui remonte à l"année 2003.

Nous remercions le professeur Philip Guo

6de l"UC San Diego, pour nous avoir autorisé à utiliser des copies d"écran de

son excellent sitePython Tutor7.

Merci également à tous les contributeurs, occasionels ou réguliers : Jennifer Becq, Virginie Martiny, Romain Laurent,

Benoist Laurent, Benjamin Boyer, Hubert Santuz, Catherine Lesourd, Philippe Label, Rémi Cuchillo, Cédric Gageat, Philibert

Malbranche, Mikaël Naveau, Amélie Bacle, Alexandra Moine-Franel. Nous remercions aussi Denis Mestivier de qui nous nous sommes inspirés pour certains exercices.

Enfin, merci à vous tous, les curieux de Python, qui avez été nombreux à nous envoyer des retours sur ce cours, à nous

suggérer des améliorations et à nous signaler des coquilles.

De nombreuses personnes nous ont aussi demandé les corrections des exercices. Nous ne les mettons pas sur le site afin

d"éviter la tentation de les regarder trop vite, mais vous pouvez nous écrire et nous vous les enverrons.

Le livre

Ce cours est également publié aux éditions Dunod sous le titre " Programmation en Python pour les sciences de la vie

8».

Vous pouvez vous le procurer dans toutes les bonnes librairies.

Afin de promouvoir le partage des connaissances et le logiciel libre, nos droits d"auteurs provenant de la vente de cet

ouvrage seront reversés à deux associations. Wikimédia France

9qui s"occupe notamment de l"encyclopédie libre Wikipédia.

NumFOCUS

10qui soutient le développement de logiciels libres scientifiques et notamment l"écosystème scientifique autour

de Python.1.https://www.u-paris.fr/

4.http://sander.nabuurs.org/

6.http://pgbovine.net/

7.http://pythontutor.com/

9.https://www.wikimedia.fr/

10.https://numfocus.org/

7 Table des matièresTable des matièresFIGURE1 - Couverture livre Dunod.

8Cours de Python / Université Paris Cité / UFR Sciences du Vivant

Chapitre 1

Introduction

1.1 C"est quoi Python?

Le langage de programmation Python a été créé en 1989 par Guido van Rossum, aux Pays-Bas. Le nomPythonvient d"un

hommage à la série téléviséeMonty Python"s Flying Circusdont G. van Rossum est fan. La première version publique de ce

langage a été publiée en 1991.

La dernière version de Python est la version 3. Plus précisément, la version 3.11 a été publiée en octobre 2022. La version

2 de Python est obsolète et n"est plus maintenue, évitez de l"utiliser.

LaPython Software Foundation1est l"association qui organise le développement de Python et anime la communauté de

quotesdbs_dbs42.pdfusesText_42
[PDF] A ma place, qu'auriez-vous répondu à la question posée lors de mon oral blanc de français 1ère Français

[PDF] a market correction usually appears overnight PDF Cours,Exercices ,Examens

[PDF] A mi me da igual 2nde Espagnol

[PDF] a moll c dur PDF Cours,Exercices ,Examens

[PDF] a n i m a t i o n 2nde Autre

[PDF] A partir d'un algorithme 2nde Mathématiques

[PDF] A partir d'un article en Anglais, Résumez EN FRANCAIS l’idée générale du texte Bac +3 Finance

[PDF] A partir dune boîte 3ème Arts plastiques

[PDF] A partir dune idée personnelle faire un dessin ressemblant au tableau de Renbrandt 4ème Arts plastiques

[PDF] a partir de combien de metre carré faut il un permis de construire PDF Cours,Exercices ,Examens

[PDF] a partir de donnés lues sur écran géogébra construire le losange ABCD sur feuille blanche et calculer son périmètre 6ème Mathématiques

[PDF] A partir de l'exemple de l'ile de france montrer que la région est devenu l'élément essentiel de l'organisation du territoire en f

[PDF] A partir de la lecture des trois extraits du roman l'Étranger d' Albert Camus,rédiger le portrait de Meursault,son personnage principal 3ème

[PDF] A partir de la lecture des trois extraits du roman l’Étranger d'Albert Camus, rédigez le portrait de Meursault , son personnage principal 3ème Fr

[PDF] A partir de la lettre de Victor Hugo destinée ? Léonie, écrire la lette quaurait pu recevoir Victor Hugo de Léonie 4ème Français