отправляет проверенный параметр. Так что постарайтесь:

от вопрос уже есть ответ здесь:

Использование лямбда-выражения для подключения слотов в pyqt 3 ответа

отказ: Я уже читал другие вопросы, подобные этому (например, этоодин) но пока не нашел для меня работающего решения (или я просто не понимаю их :))

Когда я создаюlambda внутри цикла для доступа к данным из области блока я получаюpylint предупреждение (cell-var-from-loop) из-за того, как Python захватывает работу. Например:

for key, value in data.items():
    button = QtGui.QPushButton('show data')
    button.clicked.connect(lambda: show_data(value))
    table_widget.setCellWidget(1, 1, button)

Есть еще вопросы, подобные этому, но я до сих пор не знаю, как я систематически решаю эту проблему. Я пытался предоставить значения по умолчанию дляlambda как предложеноВот:

for key, value in data.items():
    button = QtGui.QPushButton('show data')
    button.clicked.connect(lambda v=value: show_data(v))
    table_widget.setCellWidget(1, 1, button)

Но когда я делаю это так, странные вещи случаютсяvalue должна быть строка в моем примереshow_data вызывается сbool.

Я делаю что-то совершенно не так? Должен ли этот подход работать?

Ответы на вопрос(1)

Ваш ответ на вопрос