Sagot :
Voir l'image en pièce jointe pour la réponse avec les indentations correctes pour les boucles.
Tout d'abord, l'algorithme initialise et déclare la variable tables comme une liste vide.
Ensuite, on a 2 boucles imbriquées pour faire i*j avec i allant de 1 à 10 et j allant aussi de 1 à 10.
Dans la 1ère boucle on initialise et déclare une variable liste comme une liste vide.
Dans la 2ème boucle imbriquée on remplit cette variable avec la liste des valeurs de i*j pour une valeur de i donnée et j allant de 1 à 10.
A la fin de la 1ère boucle, on ajoute à tables avec la fonction append() cette liste de valeurs de i*j pour i donné.
Lorsque la 1ère boucle est terminée, tables est constituée des 10 listes contenant les valeurs de i*j ajoutées liste par liste.
On affiche tables.
Ici, tu as le programme, mais les indentations n'apparaissent pas, alors regarde bien la forme du programme sur l'image jointe:
tables = []
for i in range(1, 11):
liste = []
for j in range(1, 11):
liste += [i*j]
tables.append(liste)
print(tables)
J'espère que ça répond à ta question et que tu as compris.
Bonne chance