A ideia que eu passei na aula para criar um Singleton não funciona (deu "certo" porque eu retornei o hash da variável _INSTANCIA ao invés do self, ou seja, ele sempre retornava o mesmo número no print mesmo que os objeto sejam diferente).
Existem diversas maneiras diferentes para se fazer isso em Python. Por exemplo, algo similar ao que eu fiz na aula seria esse link, sobre-escrevendo o método __new__() para fazer da maneira correta (que é o método chamado durante a instância do objeto). Mas ele tem alguns problemas. Outras maneiras diversas existem, mas aparentemente o jeito mais comum de usar o padrão de projeto Singleton é simplesmente criar um módulo: https://stackoverflow.com/questions/6255050/python-thinking-of-a-module-and-its-variables-as-a-singleton-clean-approach e http://lucumr.pocoo.org/2009/7/24/singletons-and-their-problems-in-python/.
E se vocês fizerem uma busca, várias pessoas vão dar uma solução diferente ou vão falar o porque não fazer. Mas se você precisar mesmo, recomendo usando módulos, é o jeito mais simples mesmo.