Fonctions intégrées (built-in functions)
Les fonctions intégrées sont des fonctions qui existent déjà dans le langage Python.
Les fonctions input et print sont des exemples de fonctions intégrées.
Conversion
bool(x)-> Convertis x en booléenint(x)-> Convertis x en intfloat(x)-> Convertis x en floatstr(x)-> Convertis x en string
Le tableau suivant montre des exemples de conversions possibles:
| valeur de x | bool(x) | int(x) | float(x) | str(x) |
|---|---|---|---|---|
| True | True | 1 | 1.0 | "True" |
| False | False | 0 | 0.0 | "False" |
| 42 | True | 42 | 42.0 | "42" |
| 42.9 | True | 42 | 42.9 | "42.9" |
| -42.9 | True | -42 | -42.9 | "-42.9" |
| "False" | True | Erreur | Erreur | "False" |
| "0" | True | 0 | 0.0 | "0" |
| "42.5" | True | Erreur | 42.5 | "42.5" |
| "Bonjour" | True | Erreur | Erreur | "Bonjour" |
| "" | False | Erreur | Erreur | "" |
Fonctions intégrées
La fonction suivante est valide pour tous les types:
type(x)-> Donne le type de la variable x
Les fonctions suivantes sont bonnes pour les int:
abs(x)-> Donne la valeur absolue de xbin(x)-> Convertis le nombre en binaire puis le met dans une chaîne, préfixé de "0b"chr(x)-> Donne le caractère de la table ascii associé à xformat(x, f)-> Convertis en string selon le format f, similaire àf"{x:f}"hex(x)-> Convertis le nombre en hexadécimal puis le met dans une chaîne, préfixé de "0x"max(x, y, z, ...)-> Donne le plus grand nombre parmis tous les nombres reçusmin(x, y, z, ...)-> Idem, mais le plus petitoct(x)-> Convertis le nombre en octal puis le met dans une chaîne, préfixé de "0o"pow(x, y)-> Équivalent àx ** yround(x, y)-> Arrondis le nombre x par le nombre de décimales y. Par exempleround(3.1415, 2)donne3.14. Si y est omis, le résultat sera un int. Utilise l'arrondi bancaire.
Les fonctions abs, format, max, min, pow et round sont aussi disponibles pour les floats.
Les fonctions suivantes sont valides pour les strings:
ord(x)-> Pour une chaîne d'un seul caractère, donne le code ascii correspondantlen(x)-> Donne le nombre de caractères de la chaîne x
Documentation: https://docs.python.org/3/library/functions.html
Fonctions str
Plusieurs fonctions sont disponibles pour votre chaînes de caractères:
-
s.capitalize()-> La première lettre devient majuscule, toutes les autres en minuscule -
s.upper()-> Convertis tous les caractères en majuscule -
s.lower()-> Idem, mais en minuscule -
s.casefold()-> Idem, mais peut convertir des symboles spéciaux (ne change rien en français ou anglais) -
s.swapcase()-> Convertis les majuscule en minuscule et vice-versa -
s.title()-> La première lettre de chaque mot devient en majuscule, toutes les autres lettres deviennent en minuscule -
s.center(20)-> Ajoute des espaces jusqu'à ce que la chaîne soit de 20 caractères, les espaces sont ajoutés au début et à la fin pour centrer le texte initial -
s.ljust(20)-> Idem, mais les espaces sont ajoutés à la fin -
s.rjust(20)-> Idem, mais les espaces sont ajoutés au début -
s.expandtabs(x)-> Remplace les\tpar des espaces afin de respecter des tabulations de taille x -
s.lstrip()-> Retire les caractères d'espacement au début de la chaîne -
s.rstrip()-> Idem, mais à la fin -
s.strip()-> Combinaison delstripetrstrip -
s.removeprefix(x)-> Retire x de la chaîne si elle est présente au début de la chaîne -
s.removesuffix(x)-> Idem mais à la fin -
s.replace(old, new)-> Remplace tous les old par des new dans la chaîne -
s.count(x, a, b)-> Compte le nombre de fois que la chaîne x se trouve dans s. Commence à chercher à la lettre numéro a et termine à la lettre numéro b. Si a et b sont omis, cherche dans toute la chaîne. -
s.endswith(x)-> Retourne True si la chaîne s termine par x -
s.startswith(x)-> Retourne True si la chaîne s débute par x -
s.find(x)-> Donne l'indice (le numéro de caractère) où débute la chaîne x dans s. Donne -1 si x n'est pas dans s -
s.rfind(x)-> Idem, mais commence à chercher à la fin -
s.isalnum()-> True si tous les caractères sont alphanumériques -
s.isalpha()-> True si tous les caractères sont des lettres -
s.isascii()-> True si tous les caractères ont une valeur numérique correspondante dans la table ascii -
s.isdecimal()-> True si tous les caractères sont des chiffres -
s.isdigit()-> Idem, mais supporte les caractères spéciaux comme le² -
s.isnumeric()-> Idem, mais supporte encore plus de caractères spéciaux comme le½ -
s.islower()-> True si tous les caractères (au moins un) pouvant être minuscule ou majuscule, sont minuscules -
s.isupper()-> Idem, mais tous doivent être majuscules -
s.istitle()-> True si tous les mots de la chaîne débutent par une majuscule suivie de minuscules -
s.isspace()-> True si tous les caractères sont des caractères d'espacements (espace, tabulation, saut de ligne, etc.)
Documentation: https://docs.python.org/3/library/stdtypes.html#string-methods
Fonctions mathématiques
Vous avez accès à plus de fonctions mathématiques en important le module math. Un module est un ensemble de fonction que nous pouvons importer dans notre projet. La première ligne de votre fichier devrait être import math pour utiliser les fonctions suivantes.
Notez que tout ce qui est dans le module math débute par math. et que votre fichier ne peut pas s'appeler math.py.
Le module définis les constantes suivantes:
-
math.pi-> Pi (3.141592...) avec 15 décimales -
math.e-> e (2.718281...) avec 15 décimales -
math.ceil(x)-> Donne l'entier le plus petit entier qui est plus grand ou égal au nombre x -
math.floor(x)-> Donne l'entier le plus grand entier qui est plus petit ou égal au nombre x -
math.trunc(x)-> Retire les décimales pour faire un int -
math.comb(x, y)-> Donne le nombre de possibilités lorsque je choisi y éléments parmis un ensemble de x éléments, sans considérer l'ordre -
math.perm(x, y)-> Donne le nombre de possibilités lorsque je choisi y éléments parmis un ensemble de x éléments, l'ordre est important -
math.copysign(x, y)-> Donne x, mais avec le signe (positif ou négatif) de y -
math.fabs(x)-> Commeabsmais donne toujours un float, même si x est un int -
math.factorial(x)-> x doit être un int, donne le factoriel de x, si x vaut 5 ça va faire5 * 4 * 3 * 2 * 1 -
math.fmod(x, y)-> Équivalent àx % ypour des nombres positifs, mais plus précis pour les décimales. Pour des nombres négatifs, le signe du résultat peut différer de%(ex:math.fmod(-7, 3)donne-1.0, mais-7 % 3donne2) -
math.gcd(x, y, ...)-> Donne le plus grand commun diviseur des int reçus -
math.lcm(x, y, ...)-> Plus petit commun multiple entre plusieurs int -
math.isclose(x, y)-> Donne True si x est identique à y jusqu'à 9 décimales, utile pour les erreurs d'arrondis -
math.isfinite(x)-> Donne False si x vaut inifini ou NaN (Not a Number) -
math.isinf(x)-> Donne True si x vaut infini -
math.isnan(x)-> Donne True si x vaut NaN -
math.isqrt(x)-> Racine carrée arrondie à l'entier inférieur -
math.exp(x)-> Plus de précision pour fairemath.e ** x -
math.exp2(x)-> Équivalent de2 ** x -
math.pow(x, y)-> Équivalent àx ** y, mais le résultat sera toujours un float -
math.sqrt(x)-> Racine carrée de x -
math.cbrt(x)-> Racine cubique de x -
math.log(x, y)-> Log de x à la base y, si y est omis c'est un logarithme naturel (base demath.e) -
math.log2(x)-> Log de x à la base 2, plus précis quemath.log(x, 2) -
math.log10(x)-> Log de x à la base 10, plus précis quemath.log(x, 10)
Le module math inclus plusieurs autres fonctions: trigonométrie (acos, cos, sin, ...), conversion d'angle (degrees, radians) et hyperboliques (acosh, sinh, ...).
Documentation: https://docs.python.org/3/library/math.html
Fonctions aléatoires
Vous avez accès à des fonctions pour générer des nombres aléatoires en important le module random. La première ligne de votre fichier devrait être import random pour utiliser les fonctions suivantes.
Notez que tout ce qui est dans le module random débute par random..
random.random()-> Donne un float aléatoire entre 0.0 (inclus) et 1.0 (exclus)random.randint(a, b)-> Donne un int aléatoire entre a et b, les 2 bornes sont inclusesrandom.randrange(a, b, pas)-> Donne un int, commerandint, mais la borne b est exclue, fonctionne commerange(le paramètre pas est optionnel)random.uniform(a, b)-> Donne un float aléatoire entre a et b, les 2 bornes sont inclusesrandom.seed(x)-> Fixe le point de départ du générateur aléatoire (ne retourne rien), utile pour obtenir toujours les mêmes résultats aléatoires (par exemple pour tester votre code)
Documentation: https://docs.python.org/3/library/random.html