Python for循环不能按预期工作

时间:2016-08-28 18:56:19

标签: python pyqt4

我没有收到任何错误消息,但for循环并没有产生与显式语句相同的结果。 kp是类的实例,key0-9是该类的子元素。我试图做的事情应该真的有效吗?如果是,那么可能是关于如何构造PyQt4类的问题。

这有效:

def open_kp1(self, kp, le):
    self.inputStr = le.text()
    kp.key1.clicked.disconnect()
    kp.key2.clicked.disconnect()
    kp.key3.clicked.disconnect()
    kp.key4.clicked.disconnect()
    kp.key5.clicked.disconnect()
    kp.key6.clicked.disconnect()
    kp.key7.clicked.disconnect()
    kp.key8.clicked.disconnect()
    kp.key9.clicked.disconnect()
    kp.key0.clicked.disconnect()
    ... more code

这不是:

def open_kp1(self, kp, le):
    self.inputStr = le.text()
    key_list = (kp.key1, kp.key2, kp.key3, kp.key4, kp.key5, kp.key6, kp.key7,
            kp.key8, kp.key9, kp.key0)
    for key in key_list:
        key.clicked.disconnect()
    ... more code

1 个答案:

答案 0 :(得分:-1)

似乎问题是当您在for循环中调用disconnect()函数时,列表可能会出现一些错误,具体取决于您使用它的作用域或者在循环中运行函数的某些约束

调试此方法的一个好方法是运行此代码,以查看代码实际发出错误的位置作为第一个手段,以便您可以在此处提供更多输入供人们回答。

if (Auth::attempt($request->only(['id', 'password']))) {
            //
}

您需要验证的是列表确实存储了您想要的指针。

另外,在旁注中,最好在调试模式下运行您的应用程序,这样您就可以得到详细的描述,以防出现问题,并在此处上传跟踪。

编辑:拼写