Eu criei uma classe Fracao num arquivo e usei o if __name__ == "__main__" para testar ela. Além dos métodos que lidam diretamente com os atributos do objeto da classe, eu criei uma função mdc. Na hora de testar, o Python diz que 'mdc' não está definido, mesmo estando dentro da classe Fracao. Então eu coloquei Fracao.mdc(a,b) e funcinou.
A minha dúvida é: por que tenho que especificar da onde vem a função se ela já está na classe? e por que não tenho que fazer algo do tipo quando uma função qualquer está escrita fora da main()?
Obrigado desde já