Uso da palavra-chave "global" em Python

O que eu entendo ao ler a documentação é que o Python tem um espaço para nome separado para funções e, se eu quiser usar uma variável global nessa função, preciso usarglobal.

Estou usando o Python 2.7 e tentei este pequeno teste

>>> sub = ['0', '0', '0', '0']
>>> def getJoin():
...     return '.'.join(sub)
...
>>> getJoin()
'0.0.0.0'

Parece que as coisas estão funcionando bem, mesmo semglobal. Consegui acessar a variável global sem nenhum problema.

Estou faltando alguma coisa? Além disso, a seguir é da documentação do Python:

Os nomes listados em uma instrução global não devem ser definidos como parâmetros formais ou em um destino de controle de loop for, definição de classe, definição de função ou instrução de importação.

Embora os parâmetros formais e a definição de classe façam sentido para mim, não consigo entender a restrição de destino de controle de loop e definição de função.

questionAnswers(10)

yourAnswerToTheQuestion