Bonjour,
Au cas où ce n'est pas trop tard, pour "Vérification tous les chiffres entre 1 et n^2", je n'ai pas trouvé mieux que de balayer tous les nombres et de vérifier qu'ils sont dans le carré. Par contre, pour simplifier l'utilisation de "in", j'ai transformé la liste de listes en une liste simple.
carre1=sum(carre,[])
for i in range(1,n**2+1):
if i not in carre1 :
magic=False