1,
2.
3.传递参数:
第二个函数缺少参数self,
第三种方法:可以使用 lambda
表达式
# 连接按钮的点击信号到槽函数,传递一个参数
self.button.clicked.connect(lambda: self.onButtonClicked(10))def onButtonClicked(self, value):print("Button clicked with value:", value)
-
lambda 表达式:
- 优点:简单易用,语法简洁,适用于简单的情况。
- 缺点:在处理复杂的情况时,可能会导致代码可读性降低,不够清晰。
-
functools.partial:
- 优点:提供了更加灵活和功能更丰富的方式来处理参数传递,能够更清晰地表达意图,适用于复杂的情况。
- 缺点:相对于 lambda 表达式,使用稍微繁琐一些。