Dans module.py, je définis une classe et son singleton :

   class Counter:
       def init(self):
           self.i = 0
       def incr(self):
           self.i += 1

   counter = Counter()

Dans ext1.py j'importe le singleton et je le modifie.

   from module import counter
   import ext2

   counter.incr()
   counter.incr()

   print counter.i

   ext2.printcounter()

Dans ext2.py quand j'importe, j'accède au même singleton !

   from module import counter

   def printcounter():
       print counter.i

Ça vous paraît évident ? Je pensais que l'import dans ext2.py m'aurait recrée une instance différente.