pyqt5这个为什么所有按钮都输出的是b4?不用列表的时候好像不会出现这种情况,这是怎么回事?要怎么解决?

class MyWidget(QWidget):
def init(self):
super(MyWidget, self).__init__()
self.setupUi()
self.setupFunction()
self.show()

def setupUi(self):
    self.layout = QGridLayout()
    self.setLayout(self.layout)
    self.bts = []
    for i in range(5):
        self.bts.append(QPushButton('b'+str(i)))
        self.layout.addWidget(self.bts[i])

def setupFunction(self):
    for i in range(5):
        self.bts[i].clicked.connect(lambda :self.printStr(self.bts[i].text()))

def printStr(self, str):
    print(str)

if name == '__main__':
app = QApplication(sys.argv)
wl = [MyWidget()]
sys.exit(app.exec_())

https://blog.csdn.net/lb0737/article/details/84303669