我想用4个单选按钮制作一个if-else语句脚本:
radioButton_1, radioButton_2, radioButton_3, radioButton_4
这是我的代码:
def rb_check(self):
rb_list=[radioButton_1, radioButton_2, radioButton_3, radioButton_4]
for rb in rb_list:
if radioButton_1.isChecked():
print("You choose number 1")
else radioButton_2.isChecked():
print("You choose number 2")
else radioButton_3.isChecked():
print("You choose number 3")
else radioButton_4.isChecked():
print("You choose number 4")
我的代码是否正确?
答案 0 :(得分:1)
对于你在使用If语句所做的事情,你不需要for循环,因为你没有使用它。
你可以这样做:
def rb_check(self):
rb_list=[radioButton_1, radioButton_2, radioButton_3, radioButton_4]
for counter, rb in enumerate(rb_list):
if rb.isChecked():
print("You choose number {}".format(counter + 1))
上面的代码假设按钮按顺序排列。如果你有以setObjectName
功能命名的按钮,你可以这样做:
def rb_check(self):
rb_list=[radioButton_1, radioButton_2, radioButton_3, radioButton_4]
for rb in rb_list:
if rb.isChecked():
print("You choose {}".format(rb.objectName()))
希望这有帮助