Conexión de ranuras y señales en PyQt4 en un bucle

Estoy tratando de construir una calculadora con PyQt4 y conectar las señales 'clicked ()' de los botones no es lo esperado. Estoy creando mis botones para los números dentro de un bucle for donde trato de conectarlos después.

def __init__(self):    
    for i in range(0,10):
        self._numberButtons += [QPushButton(str(i), self)]
        self.connect(self._numberButtons[i], SIGNAL('clicked()'), lambda : self._number(i))

def _number(self, x):
    print(x)

Cuando hago clic en los botones, todos imprimen '9'. ¿Por qué es así y cómo puedo solucionar esto?

Respuestas a la pregunta(3)

Su respuesta a la pregunta