Olivier Guibé - LMRS, fortement inspiré d'un document de Pierre Navaro (IRMAR).

Librairie standard

Afin d'éviter un exécutable trop lourd, il est rapidement nécessaire d'utiliser les librairies standards pour

  • lien avec l'OS (gestion des fichiers, exécuter des commandes)
  • mesurer le temps
  • calculer $\cos(1)$ from math import cos
  • des nombres aléatoires import random
  • les rudiments des statistiques (moyenne, écart type) import statistics as stat

Random

In [1]:
import random
random.choice(['bière', 'vin rouge', 'vin blanc sec', 'vin blanc moelleux'])
Out[1]:
'vin blanc sec'
In [3]:
random.sample(range(100), 10)   # échantillon sans remplacement
Out[3]:
[34, 32, 41, 9, 89, 3, 16, 56, 27, 81]
In [11]:
random.random()    # flottant aléatoire
Out[11]:
0.1935254840346008
In [12]:
random.randrange(6)    # entier aléatoire parmi range(6)
Out[12]:
0

Statistiques

In [4]:
import statistics as stat
# commande de statistiques préfixée de stat
data = [2.75, 1.75, 1.25, 0.25, 0.5, 1.25, 3.5]
stat.mean(data)
Out[4]:
1.6071428571428572
In [5]:
stat.median(data)
Out[5]:
1.25
In [6]:
stat.variance(data)
Out[6]:
1.3720238095238095

Règle pour importer une librairie

Afin d'éviter tout conflit (deux librairies qui définissent deux routines ayant le même nom) l'usage est d'écrire import statistics ou import statsitics as stat. Dans le premier cas, toutes les commandes seront préfixées par statistics et dans le second par stat. Faire un from statistics import * est osé !

Il y a beaucoup de librairies standards

  • Conteneurs et itérations: collections, itertools
  • réseau: urllib, email, mailbox, cgi, ftplib
  • heures et dates: datetime, calendar,
  • compression de données: zlib, gzip, bz2, lzma, zipfile, tarfile
  • format de fichiers: csv, configparser, netrc, xdrlib, plistlib
  • crypto: hashlib, hmac, secrets
  • faire du html: html, xml

Voir The Python Standard Library