while循环中的timer()用法,由Python中的if语句引起的重置

while循环中的timer()用法,由Python中的if语句引起的重置,python,python-3.x,timer,Python,Python 3.x,Timer,我正在尝试使用从5开始倒计时的计时器,当达到0时,它会将布尔值设置为false。守则如下: def touchInput(): while inputTime < lastInputTime + 5: inputTable = [] inputTime = timer() lastInputTime = timer() TouchSensor('in2') if True: inputTable.

我正在尝试使用从5开始倒计时的计时器,当达到0时,它会将布尔值设置为false。守则如下:

def touchInput():
while inputTime < lastInputTime + 5:
    inputTable = []                 

    inputTime = timer()
    lastInputTime = timer()

    TouchSensor('in2')
    if True:
        inputTable.append(".")
        inputTime = timer()

    TouchSensor('in3')
    if True:
        inputTable.append("-")
        inputTime = timer()

    else:
        lastInputTime = timer()


inputAllowed = False
def touchInput():
当inputTime

我在else语句中收到了一个错误,表示在PyCharm中无法访问该变量。是否有更好的方法来表达此代码?

如果True
语句已经过时,因为它们不是真正的条件。那里应该有一个变量,可以是
True
False
。在第二种情况下,
else
-情况将永远无法达到,因为if-“condition”将始终计算为
True

这是您的完整代码吗?在您的条件语句中,您使用的是True。因此,它将始终进入此块,这就是为什么您看到有关无法访问else块的消息。这不是我的完整代码,但我的问题已得到解决