Bonsoir !

Je suis en plein apprentissage de python. Je fais ça dans mon coin, tranquillou, à l'aide du livre Apprenez à programmer en Python 3 et autres.
Je n'ai pas eu de difficultés avant d'arriver au chapitre sur modularité. (C'est triste... c'est le tout début !)
Pas de problème pour savoir ce que ça veut dire mais quelque chose bloque et ça m'énerve.
Ca fait deux jours que je cherche partout, et je me dis que ça doit être un truc évident que je ne suis plus capable de voir.
Donc voilà. J'utilise Pycharm pour écrire mes programmes.
Je balance donc ce petit exemple du cours:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
def table7():
    nb = 7
    i = 0
    while i < 0:
        print(i + 1, "x", nb, (i + 1) * nb)
        i += 1
Ce n'est rien de compliqué, c'est la base avant d'introduire les paramètres de la fonction créée.
Or, à chaque fois que je fais Run, il ne se passe rien. Mais ça, c'est normal.
Je vais sur la console et là, j'appelle la fonction. Et j'ai ce message:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
>>>table7()
Traceback (most recent call last):
File "<input>", line 1, in <module>
NameError: name 'table7' is not defined
Après moultes recherches, je comprends bien que ma fonction n'est pas définie. Mais où dois-je la définir si ce n'est dans ce que j'ai tapé avant?

Je suis allé taper ce code dans le Python Shell, mais toujours aucun résultat.
Croyant que je tapais n'importe quoi, j'ai copié/collé le code du cours (afin d'éviter les erreurs de frappe) mais ce n'est pas plus probant...

Je suis certain que c'est tout simple mais comme souvent quand on a le nez dans le guidon, on ne voit plus trop où on va.
Si quelqu'un a une idée... je suis preneur !

Merci !