无法通过pyqt中的connect方法分配变量

Cant assign a variable through connect method in pyqt

当尝试将按钮按下连接到变量赋值时,PyCharm 拒绝接受语法,用红色语法下划线表示 Can't assign to function call

下面是代码:

self.button.clicked.connect(lambda : outside_object.username = self.username)

如何在不调用类似于 setter 方法(例如 self.button.clicked.connect(lambda: outside_object.assign_username(self.username)) 的方法的情况下分配变量?

您可以使用 setattr:

self.button.clicked.connect(lambda _ : setattr(outside_object, 'username', self.username))