Aide-mémoire — Types#
essentiel
Types de base#
| Type | Exemple | Mutable |
|---|---|---|
int |
42, -7, 0b101, 0x1F |
non |
float |
3.14, 1e10 |
non |
complex |
2+3j |
non |
bool |
True, False |
non |
str |
"texte", 'texte' |
non |
NoneType |
None |
non |
list |
[1, 2, 3] |
oui |
tuple |
(1, 2, 3) |
non |
set |
{1, 2, 3} |
oui |
frozenset |
frozenset({1, 2}) |
non |
dict |
{"a": 1, "b": 2} |
oui |
Piège
Un tuple est immuable, mais son contenu ne l'est pas forcément : t = ([1], [2]) interdit t[0] = ... tout en autorisant t[0].append(3).
Une clé de dict ou un élément de set doit être hachable : str, int, float, bool, tuple de hachables. Une list ou un dict ne peut donc pas servir de clé.
Vérifier / obtenir le type#
type(42) # <class 'int'>
isinstance(42, int) # True
isinstance(42, (int, float)) # True si l'un des deux
Conversions (casting)#
int("42") # 42
int("101", 2) # 5 (base 2)
int(3.9) # 3 (troncature, pas d'arrondi)
float("3.14") # 3.14
str(42) # "42"
bool(0) # False
bool("") # False
bool([]) # False
list("abc") # ['a', 'b', 'c']
tuple([1, 2]) # (1, 2)
set([1, 1, 2]) # {1, 2}
Valeurs "falsy"#
False, None, 0, 0.0, "", [], (), {}, set() — tout le reste est "truthy".
Nombres#
7 / 2 # 3.5 (division réelle)
7 // 2 # 3 (division entière)
7 % 2 # 1 (modulo)
2 ** 10 # 1024 (puissance)
divmod(7, 2) # (3, 1)
round(3.456, 2) # 3.46
Piège
round() utilise l'arrondi bancaire (au pair le plus proche) : round(0.5) vaut 0, round(1.5) vaut 2.