Language python
Les variables | |||
---|---|---|---|
fonction | description | resultat | explication |
type(nom_de_la_variable) | La fonction "type" | <class 'int'> | La fonction renvoie le type de la variable passée en paramètre |
a = a + 3 b = a - 2 print("a =", a, "et b =", b) |
La fonction "print" ecrit sur l'invite de commande | a = 6 et b = 4 | La fonction print est dédiée à l'affichage uniquement |
les opérateurs | |||
---|---|---|---|
< | Strictement inférieur à | ||
> | Strictement supérieur à | ||
<= | Inférieur ou égal à | ||
>= | Supérieur ou égal à | ||
== | Égal à | ||
!= | Différent de | ||
les mises en formes conditionelles | |||
fonction | description | resultat | explication |
>>> a = 5 >>> if a > 0: ... print("a est positif.") ... if a < 0: ... print("a est négatif.") |
condition if; si = alors | a est positif. | |
>>> a = 5 >>> if a > 0: ... print("a est supérieur à 0.") ... else: ... print("a est inférieur ou égal à 0.") |
condition else si(sinon()) | a est supérieur à 0. | |
>>> if a > 0: # Positif ... print("a est positif.") ... elif a < 0: # Négatif ... print("a est négatif.") ... else: # Nul print("a est nul.") |
condition elif; si(sinon(si(sinon))) | a est positif. |
les prédicats | |||
---|---|---|---|
fonction | description | resultat | explication |
if a>=2 and a<=8: print("a est dans l'intervalle.") else: print("a n'est pas dans l'intervalle.") |
and | a est dans l'intervalle. | |
if a<2 or a>8: print("a n'est pas dans l'intervalle.") else: print("a est dans l'intervalle.") |
or | a n'est pas dans l'intervalle. | |
>>> majeur = False >>> if majeur is not True: ... print("Vous n'êtes pas encore majeur.") ... Vous n'êtes pas encore majeur. >>> |
not | Vous n'êtes pas encore majeur. |
les boucles | |||
---|---|---|---|
fonction | description | resultat | explication |
while i < 10: # Tant que i est strictement inférieure à 10 print(i + 1, "*", nb, "=", (i + 1) * nb) i += 1 # On incrémente i de 1 à chaque tour de boucle |
while tan que | ||
chaine = "Bonjour les ZER0S" for lettre in chaine: print(lettre) |
for pour | ||
i = 1 while i < 20: # Tant que i est inférieure à 20 if i % 3 == 0: i += 4 # On ajoute 4 à i print("On incrémente i de 4. i est maintenant égale à", i) continue # On retourne au while sans exécuter les autres lignes print("La variable i =", i) i += 1 # Dans le cas classique on ajoute juste 1 à i |
continue | ||
while 1: # 1 est toujours vrai -> boucle infinie lettre = input("Tapez 'Q' pour quitter : ") if lettre == "Q": print("Fin de la boucle") break |
break |
les fonctions | |||
---|---|---|---|
fonction | description | resultat | explication |
def table(nb, max): i = 0 while i < max: # Tant que i est strictement inférieure à la variable max, print(i + 1, "*", nb, "=", (i + 1) * nb) i += 1 |
fonction | ||
l'espace de noms principal | |||
>>>import math as mathematiques mathematiques.sqrt(25) ou >>> from math import fabs ou >>> from math import * |
import | importe math de la table mathématique | |
try: # On essaye de convertir l'année en entier annee = int(annee) except: print("Erreur lors de la conversion de l'année.") |
try except | méthode est assez grossière. Elle essaye une instruction et intercepte n'importe quelle exception liée à cette instruction | |
NameError: | except | "La variable numerateur ou denominateur n'a pas été définie." | |
TypeError: | "La variable numerateur ou denominateur possède un type incompatible avec la division." | ||
ZeroDivisionError: | "La variable denominateur est égale à 0." | ||
type_de_l_exception as exception_retournee: | |||
try: resultat = numerateur / denominateur except NameError: print("La variable numerateur ou denominateur n'a pas été définie.") else: print("Le résultat obtenu est", resultat) |
try except else | La ligne du print ne produira vraisemblablement aucune erreur, inutile de la placer dans le bloc try. | |
try: # Test d'instruction(s) except TypeDInstruction: # Traitement en cas d'erreur finally: # Instruction(s) exécutée(s) qu'il y ait eu des erreurs ou non |
try except finaly | finally permet d'exécuter du code après un bloc try, quelle que soit le résultat de l'exécution dudit bloc. La syntaxe est des plus simples : | |
try pass | permet de laisser une instruction vide | ||
raise ValueError("l'année saisie est négative ou nulle") | raise | permet de lever une exeption |
les chaines | |||
---|---|---|---|
fonction | description | resultat | explication |
chaine.lower() | chaine ex "Bonjour" | # Mettre la chaîne en minuscule | |
chaine = str() ou chaine = "" |
# Crée une chaîne vide | ||
chaine= chaine+'nouveau_caractere' | insérer un caractère dans une chaine | ||
titre.upper().center(20) | met en majuscule et centre sur 20 caractère | ||
str() | une chaine de caractere | ||
chaine[0] | le premier caractère de la chaine | ||
chaine[2:] | a partir du second caractere | ||
ma_chaine.split(" ") | separe une chaine en liste séparé par des " " |
les Listes | |||
---|---|---|---|
fonction | description | resultat | explication |
ma_liste =liste() | créer une liste | li=['a', 'b', 'mpilgrim', 'z', 'example'] | |
ma_liste = [] | |||
len() | taille de la liste | 5 | |
ma_liste.append([2,'c']) | ajoute une liste à la fin de la liste | ['a', 'b', 'mpilgrim', 'z', 'example',[2,'c']] | |
ma_liste.insert(2, 'c') | # On insère 'c' à l'indice 2 | ['a', 'b', 'mpilgrim', 'z', 'example',2,'c'] | |
ma_liste1.extend(ma_liste2) | # On insère ma_liste2 à la fin de ma_liste1 | ||
ma_liste1 += ma_liste2 | |||
supprimer | |||
on supprimer la variable | del ma_variable | ||
on supprimer la troisième valeur de la liste | del ma_liste[2] | ||
ma_liste.remove(32) | on supprime l'élément 32 de la liste et non l'indice | ||
li[:3] | on affiche jusqu'au troisième élément | ['a', 'b', 'mpilgrim'] | |
['z', 'example'] | on affiche a partir du troisième élément | ['z', 'example'] | |
parcourir une liste | |||
for elt in ma_liste: ... print(elt) |
# elt va prendre les valeurs successives des éléments de ma_liste |
||
i = 0 >>> while i < len(ma_liste): ... print(ma_liste[i]) ... i += 1 |
|||
for i, elt in enumerate(ma_liste): ... print("À l'indice {} se trouve {}.".format(i, elt)) |
|||
for elt in enumerate(ma_liste): ... print(elt) |
les Tuples | |||
---|---|---|---|
fonction | description | resultat | explication |
un tuple ne peut pas se modifier | |||
tuple_vide = () | |||
tuple_non_vide = (1,) tuple_non_vide = 1, |
|||
tuple_avec_plusieurs_valeurs = (1, 2, 5) | |||
ma_chaine.split(" ") | separe une chaine par les " " qu'elle contient | ||
" ".join(ma_liste) | rejoint une liste en une chaine |
les Dictionnaires | |||
---|---|---|---|
fonction | description | resultat | explication |
mon_dictionnaire = dict() ou mon_dictionnaire = {} |
crée un dictionnaire | clef : valeur | |
supprimer | |||
del placard["valeur"] | supprime la clef et la valeur | ||
placard.pop("valeur") | pop renvoie la valeur de la clef supprimée | ||
fonctions = {} |
|||
>>> fonctions["fete"] = fete |
# on ne met pas les parenthèses | ||
>>> fonctions["oiseau"] = oiseau >>> fonctions["oiseau"] <function oiseau at 0x00BA5198> >>> fonctions["oiseau"]() # on essaye de l'appeler |
|||
parcourir un dictionnaire | |||
parcourt des clefs | for cle in mon_dictionnaire: ... print(cle) |
||
for cle in mon_dictionnaire.keys(): ... print(cle) |
|||
parcour des valeurs | for valeur in mon_dictionnaire.values(): ... print(valeur) |
||
parcourt des deux | for cle, valeur in mon_dictionnaire.items(): ... print("La clé {} contient la valeur {}.".format(cle, valeur)) |
||
def fonction_inconnue(*en_liste, **en_dictionnaire): |
Les fichiers | |||
---|---|---|---|
fonction | description | resultat | explication |
>>> import os | Changer le répertoire de travail courant | resultat | travailler avec des chemins absolus ou relatifs | open("fichier.txt",r/w/a) | ouverture en lecture (Read) ouverture en écriture (Write). ouverture en écriture en mode ajout (Append). |
open("f.txt", "r") open("f.txt","w") open("f.txt", "a") |
ouverture et lecture du fichier Le contenu du fichier est écrasé. Si le fichier n'existe pas, il est créé. On écrit à la fin du fichier sans écraser. Si le fichier n'existe pas, il est créé. |
mon_fichier.close() | ferme le fichier | // | |
mon_fichier.read() | lire le fichier | // | on utilise la méthode "read" de la classe "TextIoWrapper" |
mon_fichier.write() | ecrire dans un fichier | // | La méthode write n'accepte en paramètre que des chaînes de caractères |
with | ecrire dans un fichier mais en tant que variable | with open(mon_fichier, mode_ouverture) as variable: | Le mot-clé with, prélude au bloc dans lequel on va manipuler notre fichier. |
Les fonction Pickler | |||||
---|---|---|---|---|---|
importation | fonction | description | exemple | ||
import pickle | pickler | mon_pickler.dump(score) | encoder des objet dans un fichier en binaire | with open('donnees', 'wb') as fichier: ... mon_pickler = pickle.Pickler(fichier) ... mon_pickler.dump(score) |
|
Unpickler | mon_depickler.load() | récupérer des objet dans un fichier en binaire | with open('donnees', 'rb') as fichier: ... mon_depickler = pickle.Unpickler(fichier) ... score_recupere = mon_depickler.load() |
Les imports | |||||
---|---|---|---|---|---|
système d'exploitation | |||||
sys | |||||
platform | affiche la description du système d'exploitation | version | affiche la version de python et du compilateur C | hexversion | affiche la version exprimée en hexadécimal | copyright | affiche le copyright | path | renvoie une liste des chemins d'accès de python (/usr/lib/python2.5...) | maxint | affiche le format du plus grand nombre entier | exit() | pour quitter le programme (ou le shell) | argv | est la liste des paramètres passés dans la ligne de commande (argv[0] contient le chemin/nom du script): | stdout | permet de rediriger les sorties vers un fichier: |
Time | |||||
---|---|---|---|---|---|
time. | |||||
sleep(sec) | marque une pause du programme pendant sec secondes | ||||
time() | retourne l'empreinte temporelle du présent sous forme de réel | ||||
clock() | en Unix, retourne le temps écoulé pour le processus en cours; en Windows, depuis le dernier appel par clock(); | ||||
ctime(ts) | convertit une empreinte temporelle ou à défaut, le temps présent, en chaîne "jour-de-semaine mois jour hh:mm:ss année" | ||||
localtime() | convertit une empreinte temporelle, ou à défault le moment présent, en tuple «temps local» (année, mois, jour, heures(24), minutes, secondes, jour de la semaine (0=lundi), jour de l'année (1-366), 1 si décalage de l'heure d'été) | ||||
time.localtime()[0] | time.localtime().tm_year | année en quatre chiffres | |||
time.localtime()[1] | time.localtime().tm_mon | mois de 1 à 12 | |||
time.localtime()[2] | time.localtime().tm_mday | jour de 1 à 31 | |||
time.localtime()[3] | time.localtime().tm_hour | nombre d'heures de 0 à 23 | |||
time.localtime()[4] | time.localtime().tm_min | nombre de minutes de 0 à 59 | |||
time.localtime()[5] | time.localtime().tm_sec | nombre de secondes de 0 à 61 | |||
time.localtime()[6] | time.localtime().tm_wday | jour de la semaine en chiffre (lundi=0) | |||
time.localtime()[7] | time.localtime().tm_yday | jour de l'année de 1 à 366 | |||
time.localtime()[8] | time.localtime().tm_isdst | 1 en cas de jour en période d'heure d'été | |||
gmtime() | convertit une empreinte temporelle, ou à défault le moment présent, en tuple «temps universel» (année, mois, jour, heures(24), minutes, secondes, jour de la semaine (0=lundi), jour de l'année (1-366), 1 si décalage de l'heure d'été) | ||||
asctime() | convertit un tuple au format localtime/gmtime en chaîne au format ctime | ||||
mktime() | convertit un tuple au format localtime/gmtime en empreinte temporelle | ||||
strftime(format[,tuple]) | retourne une chaîne selon un formatage et un tuple de date (ou à défaut, le temps présent). Le format peut contenir: | ||||
%% | pour afficher le caractère % | ||||
%a | pour Mon, Tue, Wed, Thu, Fri, Sat ou Sun | ||||
%A | pour Monday, Tuesday, Wednesday, Thursday, Friday, Saturday ou Sunday | ||||
%b | pour Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov ou Dec | ||||
%B | pour January, February, March, April, May, June, July, Augustus, September, October, November ou December | ||||
%c | la date et l'heure au format ctime() | ||||
%C | (non documenté mais valide en python 2.7) 19 ou 20: les deux premiers chiffres de l'année en quatre chiffres | ||||
%d | le jour du mois, de 01 à 31 | ||||
%D | (non documenté mais valide en python 2.7) voir %x | ||||
%H | l'heure en chiffres, de 01 à 23 | ||||
%I | l'heure en chiffres, de 01 à 12 | ||||
%p | AM ou PM (sic) | ||||
%P | am ou pm (sic) | ||||
%j | le jour de l'année, de 001 à 366 | ||||
%m | le mois en chiffres, de 01 à 12 | ||||
%M | la minute en chiffres, de 00 à 59 | ||||
%s | (non documenté mais valide en python 2.7) empreinte temporelle sous forme de chaîne | ||||
%S | la seconde, en chiffres, de 00 à 61 (il peut exister des secondes additionnelles en fin de semestre) | ||||
%u | (non documenté mais valide en python 2.7) le jour de la semaine en chiffre, de 1 (lundi) à 7 (dimanche) | ||||
%U | la semaine (commençant par un dimanche) en chiffre, de 00 à 53; les jours avant le premier dimanche appartiennent à la semaine 00 | ||||
%w | le jour de la semaine en chiffre, de 0 (dimanche) à 6 (samedi) | ||||
%W | la semaine (commençant par un lundi) en chiffre, de 00 à 53; les jours avant le premier lundi appartiennent à la semaine 00 | ||||
%x | la date selon la représentation conforme à la locale | ||||
%X | l'heure selon la représentation conforme à la locale | ||||
%y | l'année sur deux chiffres, de 00 à 99 | ||||
%Y | l'année sur quatre chiffres, de 1901 à 2038 | ||||
%z | (non documenté mais valide en python 2.7) "0200" pour 2h de décalage horaire. | ||||
%Z | la zone horaire | ||||
strptime(chaine,"format"]) | retourne un tuple au format localtime/gmtime basé sur l'interprétation d'une chaîne à travers les éléments de formatage représentés ci-dessus: | ||||
timezone | contient la valeur du décalage en secondes de l'heure locale avec le temps universel (négatif si 0h local arrive avant 0hUT) | ||||
altzone | contient la valeur du décalage en secondes de l'heure locale d'été avec le temps universel (négatif si 0h local arrive avant 0hUT) | ||||
daylight | est égal à 1 si l'heure d'été est à considérer | ||||
tzname | est un tuple contenant les noms de la zone horaire et de son homologue «heure d'été» en cours | ||||
tzset() | initialise la zone horaire |
OS | |||||
---|---|---|---|---|---|
os. | |||||
system() | permet une commande de console bash ou DOS: os.system("dir") | ||||
popen | permet de récupérer la sortie d'une commande-système, à passer comme le nom d'un fichier que l'on ouvre. Dans l'exemple qui suit, acpi -t retourne une chaîne contenant la température du processeur: | ||||
uname() | renvoie le tuple (os, station, kernel, datekernel, processeur) de la machine exécutant le script. | ||||
name | Nom du système UN*X: posix ; nt, os2, mac, ce, riscos… | ||||
path | UN*X: module 'posixpath' from '/usr/lib/python2.5/posixpath.pyc | ||||
curdir | répertoire actuel. UN*X et Win: . , Mac: : | ||||
pardir | répertoire parent. UN*X et Win: .. , Mac: :: | ||||
sep | séparateur de répertoire - UN*X: /, Win: \, Mac: : | ||||
altsep | UN*X: None | ||||
pathsep | séparateur de chemins - UN*X: : , Win: ; | ||||
defpath | retourne ou détermine le chemin des exécutables. | ||||
linesep | séparateur de paragraphes - UN*X: '\n' (octet 10), Mac: \r (octet 13), Win: \r\n | ||||
walk | produit un générateur capable de délivrer de façon récursive une série de tuples de trois éléments: le premier est le nom du répertoire, le second la liste de ses sous-répertoires et le troisième la liste de ses fichiers. | ||||
Les droits | |||||
chown(fichier,usr,grp) | fixe le propriétaire et le groupe, exprimés sous forme de nombres | ||||
chmod(fichier, mode) | fixe les attributs du fichier en trois chiffres octaux. Le premier concerne le propriétaire du fichier, le second un groupe, et le troisième tout le monde. Chaque chiffre a une valeur de 0 à 7, addition de 4 s'il doit être lisible, 2 modifiable et 1 exécutable. 0754 donne tous les droits (4+2+1) au propriétaire, les droits de lecture et d'exécution (4+1) pour le groupe spécifié et uniquement de lecture (4) à tout le monde (rappel: un nombre commençant par un zéro désigne un nombre octal. | ||||
access(fichier,mode) | retourne TRUE selon les possibilités d'accès à un fichier. mode = os.F_OK pour l'existence, os.R_OK pour la lecture, os.W_OK pour la modification, os.X_OK pour l'exécution du fichier (ou l'ouverture du répertoire). | ||||
Édition de fichiers | |||||
descr=open(chaine,flags,mode) | ouvre un fichier. flags admet les variables suivantes: O_RDONLY (=0), O_WRONLY (=1), O_RDWR (=2), O_CREAT (=64), O_APPEND (=1024), O_BINARY (MS seulement)... on les compose en les additionnant ou avec le "ou" logique "|". mode (facultatif): voir les droits ci-dessus. | ||||
read(descr,n) | retourne une chaîne de n octets du contenu d'un fichier ouvert en 0 ou 1 | ||||
write(descr,chaine) | écrit une chaîne dans un fichier (en écrasant ou en ajout selon le mode d'ouverture) | ||||
close(descr) | ferme un fichier | ||||
lseek(descr,n,mode) | positionne le curseur d'un fichier selon un offset n, selon le mode: os.SEEK_SET (ou 0: à partir du début), os.SEEK_CUR (ou 1, à partir de la position courante), os.SEEK_END (ou 2: à partir de la fin) | ||||
remove(fichier) | détruit un fichier si droit d'écriture | ||||
rename(ancien,nouveau) | renomme un fichier ou un répertoire, permet également de déplacer un fichier: | ||||
Gestion des répertoires | |||||
getcwd() | renvoie le répertoire courant connu du système. Si un script est appelé par l'interface graphique (et que le module sys est importé), il est préférable d'utiliser | ||||
path.dirname(sys.argv[0]), | plus exact | ||||
chdir(repertoire) | pénètre dans un répertoire existant | ||||
chdir("..") (UN*X ou MS) ou chdir("::") (Mac) ou plus universellement chdir(os.pardir) | remonte d'un niveau de répertoire | ||||
listdir(os.getcwd()) | renvoie une liste de tous les objets du répertoire courant | ||||
walk(rep) | est un générateur renvoyant des tuples ('répertoire',[sous-répertoires],[fichiers]) | ||||
mkdir(repertoire,mode) | crée un répertoire dans le répertoire courant, mode 0777 par défaut | ||||
makedirs(chemin,mode) | crée tout un chemin dans le répertoire courant, mode 0777 par défaut | ||||
rmdir(repertoire) | détruit un répertoire (en principe vide) si droit d'écriture | ||||
link(fichier, lien) | établit un lien matériel, en fait un autre nom pour le même fichier | ||||
symlink(fichier, lien) | établit un lien symbolique (une redirection vers un fichier) | ||||
readlink(lien) | retourne le fichier pointé par le lien symbolique (pas un lien matériel, qui est un vrai nom de ficher) | ||||
Sous-module os.path Le sous-module os.path est automatiquement chargé avec import os, mais peut être chargé à part avec import os.path | |||||
path.getsize(fichier) | retourne la taille (entier long) | ||||
path.getmtime(fichier) | retourne la date de la dernière modification d'un fichier (idem) | ||||
path.getatime(fichier) | retourne la date du dernier accès à un fichier (en nombre de secondes, voir 1.2 'time' | ||||
path.dirname(cheminfichier) | retourne la partie de l'adresse à gauche du dernier séparateur de répertoire (/, \, :...) | ||||
path.basename(cheminfichier) | retourne la partie de l'adresse à droite du dernier séparateur de répertoire | ||||
path.split(cheminfichier) | retourne un tuple avec les résultats de dirname et basename | ||||
path.abspath(fichier) | renvoie l'adresse absolue du nom de fichier précisé | ||||
path.expanduser(fichier) | complète une chaîne commençant par ~/ | ||||
path.realpath(adresse) | élimine les /. et réduit les /rep/.. | ||||
path.splitext("nom.ext") | retourne le tuple ('nom', '.ext') | ||||
path.exists(fichier) | renvoie True si le fichier existe | ||||
path.isfile(fichier) | renvoie True si l'objet est un fichier | ||||
path.isdir(fichier) | renvoie True si l'objet est un répertoire | ||||
path.islink(fichier) | renvoie True si l'objet est un lien symbolique, un lien matériel renvoie False | ||||
path.ismount(chemin) | renvoie True si le répertoire est un point de montage | ||||
path.isabs(fichier) | renvoie True si le nom du fichier comporte le chemin complet |
math. (mathématique) | |||||
---|---|---|---|---|---|
math. | |||||
math.__doc__ | ne nous renseigne que sur sa conformité au C. | ||||
math.pi | retourne une approximation de la constante pi: 3.1415926535897931 | ||||
math.degrees() et radians() | transforment en degrés ou en radians | ||||
math.cos(), math.sin(), math.tan() | rapports trigonométriques usuels | ||||
math.acos(), math.asin(), math.atan() | rapports trigonométriques inverses | ||||
math.cosh(), math.sinh(), math.tanh() | rapports trigonométriques hyperboliques | ||||
math.atan2(y,x) | donne l'arctangente de la valeur y/x | ||||
math.e | retourne une approximation de la constante e: 2.7182818284590451 | ||||
math.exp() | exponentielle à base e | ||||
math.log() | logarithme naturel (base e) | ||||
math.log10() | logarithme en base 10 | ||||
math.pow(x,y) | renvoie x à la puissance y | ||||
math.sqrt() | renvoie la racine carrée | ||||
math.hypot(x,y) | renvoie l'hypothénuse pour un triangle rectangle de côtés x et y | ||||
math.fabs() | renvoie la valeur absolue (notation décimale) | ||||
math.fmod(x,y) | renvoie le reste (notation décimale) de x modulo y | ||||
math.modf() | renvoie un tuple (partie décimale, partie entière) d'un "réel" | ||||
math.ldexp(x,y) | renvoie x*y**2, soit x fois y exposant 2 | ||||
math.frexp() | renvoie un tuple (x,y), où x est la fraction du nombre 2**y: | ||||
math.ceil() arrondissement par excès d'un nombre "réel" | math.floor() arrondissement par défaut d'un nombre "réel" | ||||
Le module cmath reprend la plupart des méthodes du module math pour les nombres complexes a+bj : | |||||
cmath.pi, cmath.e, cmath.log, cmath.log10, cmath.exp, cmath.sqrt, cmath.cos(), cmath.sin(), cmath.tan(), cmath.acos(), cmath.asin(), cmath.atan(), cmath.cosh(), cmath.sinh(), cmath.tanh(), cmath.acosh(), cmath.asinh(), cmath.atanh() |
random (hasard) | |||||
---|---|---|---|---|---|
random. | |||||
random.choice(liste) | choisit un élément d'une liste: random.choice([1,'a',125,'ouiche']) | ||||
random.sample(liste,n) | renvoie une liste de n éléments choisis d'une liste | ||||
random.shuffle(liste) | mélange les éléments d'une liste | ||||
random.randint(borne1,borne2) | renvoie un entier au hasard entre deux bornes (incluses); préférer le suivant | ||||
random.randrange(borne1,borne2,pas) | renvoie un entier entre la première borne (incluse) et la deuxième (exclue); le pas est optionnel | ||||
random.randrange(borne2) | renvoie un entier entre 0 (inclus) et la deuxième un entier (exclu) | ||||
random.seed(n) | (ré-)initialise le générateur de nombres pseudo-aléatoires | ||||
random.random() | renvoie un "réel" compris dans l'intervalle [0,1[ | ||||
random.uniform(r1,r2) | renvoie un "réel" compris dans l'intervalle [r1,r2[ | ||||
Les méthodes suivantes génèrent des nombres pseudo-aléatoires selon des distributions particulières: random.betavariate, random.cunifvariate, random.expovariate, random.gammavariate, random.gauss, random.lognormvariate, random.normalvariate, random.paretovariate, random.vonmisesvariate et random.weibullvariate. Exemple: | |||||
print random.gauss(moyenne,ecart_type) | sort un "réel" selon les probabilités d'une distribution normale (d'autant plus probable que proche de la moyenne) | ||||
random.BPF, random.LOG4, random.NV_MAGICCONST, random.SG_MAGICCONST et random.TWOPI sont les variables disponibles. |
string (chaînes) | |||||
---|---|---|---|---|---|
chaine. | |||||
Il est possible de ne pas charger le module string, en utilisant la forme variable.methode(). Attention! la chaîne d'origine n'est pas affectée par les modifications, le résultat doit être récupéré par une variable: variable=chaine.methode().Pour une variable dénommée chaine: | |||||
upper() | convertit en majuscule | ||||
lower() | convertit en minuscule | ||||
capitalize() | passe la première lettre de la chaîne en capitale | ||||
title() | passe la première lettre de chaque mot de la chaîne en capitale | ||||
swapcase() | transforme minuscules en majuscules et inversement | ||||
split() | renvoie une liste de tous les mots (séparation: l'espace) d'une chaîne-phrase | ||||
split('*') | le séparateur peut être une chaîne autre que l'espace | ||||
split(' ',n) | on peut limiter le nombre de séparations effectuées ' '.join(liste) concaténation d'une liste (ou tuple) de chaînes (le séparateur est ici l'espace) | ||||
string.join(liste,'sep') | cette forme oblige à charger le module au préalable | ||||
startswith('pref') | renvoie True si la chaîne commence par le prefixe | ||||
endswith('suf') | renvoie True si la chaîne termine par le suffixe | ||||
strip() | ôte les espaces en début et fin de chaîne | ||||
lstrip() / chaine.rstrip() | ôtent les espaces en début / fin de chaîne | ||||
strip('car') | ôte les caractères précisés en début et fin de chaîne | ||||
ljust(n) | remplit d'espaces à gauche pour que la chaîne fasse n caractères | ||||
rjust(n) | remplit d'espaces à droite pour que la chaîne fasse n caractères | ||||
center(n) | entoure la chaîne d'espaces pour qu'elle fasse n caractères | ||||
zfill(n) | ajoute des 0 à gauche pour que la chaîne fasse n caractères | ||||
expandtabs(n) | transforme les tabulations en n espaces (8 par défaut) | ||||
count(ssch,debut,fin) | compte les occurrences de la sous-chaîne dans la chaîne, éventuellement entre deux positions | ||||
find(ssch) | renvoie la position d'une sous-chaîne dans une chaîne (0 pour la première position, -1 si la sous-chaîne ne s'y trouve pas | ||||
find(ssch,debut) | renvoie la première position d'une sous-chaine dans une chaine, en définissant les positions de début | ||||
find(ssch,debut,fin) | idem, définissant en plus la position de fin | ||||
rfind(ssch,debut,fin) | pareil, mais en commençant par la fin | ||||
replace(ssch1,ssch2) | remplace si elle existe une sous-chaîne par une autre | ||||
replace(ssch1,ssch2,n) | idem, en limitant le nombre de remplacement à n | ||||
rempl=string.maketrans(ch1,ch2) | définit un protocole de remplacements pour translate | ||||
translate(rempl[,suppr]) | assigne les remplacements définis à une chaîne, avec une éventuelle chaîne des caractères à supprimer (dans ce cas, la suppression a lieu avant le remplacement). Exemple: |
les socket | |||||
---|---|---|---|---|---|
accept() | : accepte une connexion, retourne un nouveau socket et une adresse client | ||||
bind(addr) | : associe le socket à une adresse locale | ||||
close() | : ferme le socket | ||||
connect(addr) | : connecte le socket à une adresse distante | ||||
connect_ex(addr) | : connect, retourne un code erreur au lieu d'une exception | ||||
dup() | : retourne un nouveau objet socket identique à celui en cours | ||||
fileno() | : retourne une description du fichier | ||||
getpeername() | : retourne l'adresse distante | ||||
getsockname() | : retourne l'adresse locale | ||||
getsockopt(level, optname[, buflen]) | : retourne les options du socket | ||||
gettimeout() | : retourne le timeout ou none | ||||
listen(n) | : commence à écouter les connexions entrantes | ||||
makefile([mode, [bufsize]]) | : retourne un fichier objet pour le socket | ||||
recv(buflen[, flags]) | : recoit des données | ||||
recv_into(buffer[, nbytes[, flags]]) | : recoit des données (dans un buffer) | ||||
recvfrom(buflen[, flags]) | : reçoit des données et l'adresse de l'envoyeur | ||||
recvfrom_into(buffer[,nbytes,[,flags]) | : reçoit des données et l'adresse de l'envoyeur (dans un buffer) | ||||
sendall(data[, flags]) | : envoye toutes les données | ||||
send(data[, flags]) | : envoye des données mais il se peut que pas toutes le soit | ||||
sendto(data[, flags], addr) | : envoye des données à une adresse donnée | ||||
setblocking(0 | 1) | : active ou désactive le blocage le flag I/O | ||||
setsockopt(level, optname, value) | : définit les options du socket | ||||
settimeout(None | float) | : active ou désactive le timeout | ||||
shutdown(how) | : fermer les connexions dans un ou les deux sens. |
les listes | |||||
---|---|---|---|---|---|
.append(x) | Ajoute un élément à la fin de la liste. Équivalent à a[len(a):] = [x]. | ||||
.extend(iterable) | Étend la liste en y ajoutant tous les éléments de l’itérable. Équivalent à a[len(a):] = iterable. | ||||
.insert(i, x) | Insère un élément à la position indiquée. Le premier argument est la position de l’élément courant avant lequel l’insertion doit s’effectuer, donc a.insert(0, x) | ||||
.remove(x) | Supprime de la liste le premier élément dont la valeur est égale à x. Une exception est levée s’il n’existe aucun élément avec cette valeur. | ||||
.pop([i]) | Enlève de la liste l’élément situé à la position indiquée et le renvoie en valeur de retour. Si aucune position n’est spécifiée, a.pop() enlève et renvoie le dernier élément de la liste (les crochets autour du i dans la signature de la méthode indiquent que ce paramètre est facultatif | ||||
.clear() | Supprime tous les éléments de la liste. Équivalent à del a[:]. | ||||
.index(x[, start[, end]]) | Renvoie la position du premier élément de la liste dont la valeur égale x (en commençant par zéro). Une exception ValueError est levée si aucun élément n’est trouvé. | ||||
.count(x) | Renvoie le nombre d’éléments ayant la valeur x dans la liste. | ||||
.sort(key=None, reverse=False) | Classe les éléments sur place (les arguments peuvent personnaliser le classement, voir sorted() pour leur explication). | ||||
.reverse() | Inverse l’ordre des éléments de la liste, sur place. | ||||
.copy() | Renvoie une copie superficielle de la liste. Équivalent à a[:]. |
pentest | |||||
---|---|---|---|---|---|
Simple GET request for html source |
import httplib | ||||
Get http response headers |
import urllib2 | ||||
Capture cookies generation/possibly session IDs |
from anonBrowser import * | ||||
Testing for anonymous FTP login |
import ftplib | ||||
Nmapscan using python |
import nmap | ||||
Site recon –scraping links from target |
from anonBrowser import * | ||||
|