En tant que débutant je dis peut être des bêtises mais je pense que vous confondez l'utilisation du mot global avec ce qui se fait par ailleurs dans d'autres langages que Python.
Dans les autres langages, souvent le mot global se met dans la déclaration de la variable et lui assigne ainsi un scope global, accessible de partout.
Mais en Python, une variable définit dans le module, à la racine (pas dans une fonction ou une classe) est par défaut une variable globale.
Quand on utilise une variable dans une fonction, celle ci n'existe que le temps d’exécution de la fonction, et n'est pas accessible de l'extérieur de la fonction.
Le fait d'ajouter le mot global devant votre variable dans le corps de la fonction ne fait rien d'autre qu'indiquer à Python que cette variable fait référence à une variable globale qui devrait donc exister en dehors de la fonction dans le scope global.
Je ne sais pas si cela aide, c'est ce que j'ai compris en tout cas.