# Python Hésite pas à regarder des repos existants sur GitHub. Ce n'est pas de la triche si tu t'inspires de leur algo tant que tu ne copies pas le code. ## man en python Tu peux lancer un shell dans un terminal en lançant `python` dans ton terminal De la, `help(ord)` pour avoir le man de `ord` et `exit()` pour quitter. ```bash $ python >>> help(ord) >>> exit() ``` Si tu veux le man de math.ceil, il faut d'abord importer math ```bash $ python >>> import math >>> help(math.ceil) >>> exit() ``` Tu as des mans pour tous les types aussi pour savoir ce que tu peux faire avec : `help(int)`, `help(list)`, `help(str)`. Toutes les fonctions `__something__` sont des fonction spéciales. Par ex, `__add__` gère le comportement si tu fais un `+` (`"abc" + "def" == "abcdef"`), c'est pas hyper important si tu comprends pas cette partie pour l'instant. Par contre `"abc".endswith()` ou `["a", "b"].append()` pourraient t'être utiles. ## Condition ```python if cond and cond2 or cond3: print(hello) ``` ## Printf mais mieux ```python a = 2 b = 2.45675325 s = "hello" print(f"{a}, {b:.2f}, {s}") ``` `f""` (on appelle ça une fstring) te permet de rajouter une variable dans ta string avec `{var}` si tu veux la modifier, `{var:mod}`. `mod` est assez proche de ce que tu as en C. ## Tableaux La syntaxe est un peu bizarre, mais elle permet d'initialiser le tableau avec ce que tu veux. Dans tous les exemples, `tab == tab1`. ```python tab = [[0 for x in range(2)] for y in range(3)] tab1 = [ [0, 0] [0, 0] [0, 0] ] ``` Pas de gestion de la ram en python, donc 2 et 3 peuvent être des variables. ... ou des strings ```python s = "abc" tab = [[0 for x in s] for _ in range(2)] tab2 = [ [0, 0, 0] [0, 0, 0] ] ``` ```python tab = [[x for x in "abc"] for _ in range(2)] tab2 = [ ["a", "b", "c"] ["a", "b", "c"] ] ``` Tu peux aussi modifier la taille de ton tableau après coup avec `tab.append()` et `tab.pop()`. ## Conversions ```python a = int("2") # a = 2 b = str(a) # b = "2" ``` ## Gestion d'erreur ```python try: a = int("z") except: a = 0 ``` Si `"z"` n'est pas un `int` valide, le code dans `except` sera exécuté.