Types de valeurs
        
                        
                                                                                    
                                                                                            Entier (négatifs aussi)  | 
                                                                                                                         | 
                                                                                 
                                                                                            
                                                                                            Chaîne de charactères  | 
                                                                                                                         | 
                                                                                 
                                                                                            
                                                                                            Réel  | 
                                                                                                                         | 
                                                                                 
                                                                                            
                                                                                            Booléen  | 
                                                                                                                         | 
                                                                                 
                                                                         
                             
    
    
            Expressions + ordre des priorités
        
                        
                                                                                    
                                                                                             | 
                                                                                                                        Exposant  | 
                                                                                                                          | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Négatif unaire  | 
                                                                                                                          | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Multiplication, division  | 
                                                                                                                          | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Négatif binaire  | 
                                                                                                                          | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Comparaisons  | 
                                                                                                                          | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        NOT logique  | 
                                                                                                                          | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        AND logique  | 
                                                                                                                          | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        OR logique  | 
                                                                                                                          | 
                                                                                 
                                                                         
                             
    
    
            Casting
        
                        
                                                                                    
                                                                                             | 
                                                                                                                        Transforme la variable en un  int
  si possible  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Transforme la variable en un  float
  si possible  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Transforme la variable en un  string
  si possible  | 
                                                                                 
                                                                         
                             
    
    
            Alternatives
        
                        
                                    
                        if value > 0 :
        #do stuff
elif value < 0 :
        #do other shit
else :
        #do the rest idk
  | 
                     
                             
                             
    
    
            Boucle while
        
                        
                                    
                        i = 0
while i <= 4 : #on répète 5 fois
    print(i)
    i += 1
  | 
                     
                             
                            Faire attention à compter à partir de 0 jusqu'au nombre qu'on a besoin !!  
                             
                             | 
                                                                              | 
                                                        
                                
    
    
            Procédure vs fonction
        
                        
                                                                                    
                                                                                            Procédure  | 
                                                                                                                        Une suite d'instructions  | 
                                                                                 
                                                                                            
                                                                                            Fonction  | 
                                                                                                                        Une suite d'instructions avec un retour d'expression  | 
                                                                                 
                                                                         
                             
    
    
            Fonction
        
                        
                                    
                        def fonction(variable) :
    #do stuff
    return result
  | 
                     
                             
                            Une procédure n'a tout simplement pas de return. Sinon, c'est la même chose.  
                             
    
    
            Documentation
        
                        
                                                                                    
                                                                                            Les comentaires peuvent être utilisés lors de la planification, de la description algorithmique et de l'étiquétage d'un code  | 
                                                                                 
                                                                                            
                                                                                            Les docstrings décrivent les fonctions d'une fonction  | 
                                                                                 
                                                                                            
                                                                                            Les commentaires ne peuvent être de plus de 72 charactères  | 
                                                                                 
                                                                         
                             
    
    
            Typehinting
        
                        
                                    
                        def fonction(var: type) -> type:
  | 
                     
                             
                            Le type peut être  str, int, float, tuple, list, dict, None
  ou  bool
  
                             
    
    
            Boucle for
        
                        
                                    
                        lst = ["weed",1,2,3,4]
for l in lst :
    print(l) # l = élément de la liste
  | 
                     
                             
                            le "for" prend chaque élément dans l'ordre en mémoire. Cela marche aussi pour les paires clé/valeur d'un dictionnaire et pour les éléments d'un tuple  
                             
    
    
            Types de séquence
        
                        
                                                                                    
                                                                                            Strings  | 
                                                                                                                         | 
                                                                                 
                                                                                            
                                                                                            Listes  | 
                                                                                                                        [3, 7, "weed", (42,69)]
  | 
                                                                                 
                                                                                            
                                                                                            Tuples  | 
                                                                                                                        (3, 7, "weed", [42,69])
  | 
                                                                                 
                                                                                            
                                                                                            Dictionnaires  | 
                                                                                                                        {'Python': 'un language progra', 'le tout': 42, '1': '2'}
  | 
                                                                                 
                                                                         
                             
    
    
            Liste vs Tuple
        
                        
                                                                                    
                                                                                            Ressemblances  | 
                                                                                                                        C'est tous les 2 des collections de tous types de données  | 
                                                                                 
                                                                                            
                                                                                            Différences  | 
                                                                                                                        Les listes sont muables par rapport aux tuples  | 
                                                                                 
                                                                         
                             
    
    
            Slicing
        
                        
                                                                                    
                                                                                            Input  | 
                                                                                                                        lst = [0,1,2,3,4] second_lst = lst[0:5:2]
  | 
                                                                                 
                                                                                            
                                                                                            Output  | 
                                                                                                                         | 
                                                                                 
                                                                         
                            1er opérateur : numéro du début de slicing  
2ème opérateur : numéro de fin de slicing (!!! la position n'est pas incluse) 
3ème opérateur : numéro de pas (la fin inclus mais pas le début) 
(comme on compte d'habitude)  
                             
    
    
            Opérations sur les séquences
        
                        
                                                                                    
                                                                                             | 
                                                                                                                        Si  val
  est dans la séquence  seq
  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        L'inverse d'au dessus  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Slicing (voir slicing)  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                         | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        La valeur minimale de  seq
  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        La valeur maximale de  seq
  | 
                                                                                 
                                                                                            
                                                                                            seq.index(val[, start[, end]])
  | 
                                                                                                                        Position de la première valeur  val
  avec début et fin non obligatoires  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Compte combien de fois on a  val
  dans  seq
  | 
                                                                                 
                                                                         
                             
    
    
            Opérations sur les strings
        
                        
                                                                                    
                                                                                             | 
                                                                                                                        Renvoie une copie de  str
  en minuscule  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Renvoie une copie de  str
  en majuscule  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Remplace la séquence dans le string  old
  par  new
  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Divise  str
  à l'aide du délimiteur  delim
  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Efface les espaces de  str
  | 
                                                                                 
                                                                         
                             
    
    
            Opérations séquences muables (listes)
        
                        
                                                                                    
                                                                                             | 
                                                                                                                        Slicing (!! Cela remplace  val
 )  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Efface en slicing  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                         | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                         | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Étend  seq
  avec  t
  (si  t
  est un string, il prend chaque charactère séparément)  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Répète  seq
  et le remet dans la variable  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Insère la valeur après  before
  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Affiche et efface dans la séquence (on compte à partir de 1 !!)  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Efface la 1 ère valeur dans  seq
  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Inverse la séquence  | 
                                                                                 
                                                                         
                             
    
    
            Insérer un élement dans une séquence muable
        
                        
                                                                                    
                                                                                            Liste  | 
                                                                                                                        list.append[truc]
  ou   list.insert(pos, truc)
  | 
                                                                                 
                                                                                            
                                                                                            Dictionnaire  | 
                                                                                                                        Refaire un dict avec la position ou  dict["key"] = value
  pour le mettre en dernière position  | 
                                                                                 
                                                                         
                             
    
    
            Operations sur les dictionnaires
        
                        
                                                                                    
                                                                                             | 
                                                                                                                        Retourne les paires clé/valeurs dans une liste de tuples  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Retourne les clés dans une liste  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Retourne les valeurs dans une liste  | 
                                                                                 
                                                                         
                             
    
    
            Dictionnaire dans un dictionnaire
        
                        
                                    
                        dict[key_1][key_2][key_n]
  | 
                     
                             
                             
    
    
            Déballage séquence
        
                        
                                                                                    
                                                                                            C'est l'utilisation des tuples comme expression de gauche.  | 
                                                                                 
                                                                                            
                                                                                            Cela permet de prendre plusieurs variables en même temps ou affecter des variables sans savoir exactement combien il y en a.  | 
                                                                                 
                                                                         
                             
    
    
            Principes de Clean Code
        
                        
                                                                                    
                                                                                            Préférer l'utilisation des  val
  et  not
  val dans les alternatives et les boucles  | 
                                                                                 
                                                                                            
                                                                                            Utiliser des boucles while quand on a pas besoin de passer par toute la séquence, sinon utiliser une boucle  for
  | 
                                                                                 
                                                                                            
                                                                                            Utiliser les fonctions le plus possible (mais sans exagérer non plus)  | 
                                                                                 
                                                                         
                             
    
    
            Clean Code (À NE PAS FAIRE !!)
        
                        
                                    
                        if boolean == True and another_bool == False :
    #do stuff
else :
    #do something else
  | 
                     
                             
                             
    
    
            Fonctions utiles
        
                        
                                                                                    
                                                                                             | 
                                                                                                                        Génère une séquence de nombres respectant un motif strict.  start
  n'est pas obligatoire et non plus le  step
 . Le  end
  y est  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Imprime n'importe quoi sur la console (bon pour les debugs)  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Nous dit le type de variable  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Nous montre l'addresse où se situe la valeur de la variable  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Nous donne un nombre au hasard entre  0
  et  1
  | 
                                                                                 
                                                                                            
                                                                                            random.randint(start, end)
  | 
                                                                                                                        Nous donne un nombre au hasard entre  start
  et  end
 .  start
  et  end
  sont obligatoires  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Transforme un charactère en son code Unicode décimal ( a
  = 97)  | 
                                                                                 
                                                                                            
                                                                                             | 
                                                                                                                        Transforme un code Unicode décimal en un charactère Unicode  | 
                                                                                 
                                                                         
                             
                             |