Qual é o escopo de uma variável inicializada em uma instrução if?
Eu sou novo no Python, então essa é provavelmente uma questão de escopo simples. O código a seguir em um arquivo Python (módulo) está me confundindo um pouco:
if __name__ == '__main__':
x = 1
print x
Em outros idiomas em que trabalhei, esse código geraria uma exceção, pois ox
variável é local para oif
declaração e não deve existir fora dela. Mas esse código é executado e imprime 1. Alguém pode explicar esse comportamento? Todas as variáveis criadas em um módulo são globais / disponíveis para todo o módulo?