非常具体实例中的程序错误 - 详细

时间:2016-02-18 18:15:46

标签: python

我在Python中编写了一个简单的控制台程序来执行基本的逻辑计算。但是,当我使用任何单个字母r,s,t或u(小写)作为变量时,控制台就会停转。它不会产生错误或任何东西,我最终不得不按Ctrl + C(Linux中的键盘中断)。但是,除了这四个字母之外,使用字母表中的任何其他字母,我的程序运行正常。

以下是控制台停转的确切时刻:

When the Console Stalls

在我失去键盘中断之后的另一个片段,以及程序的成功运行:

After a Keyboard Interrupt Following a Stall

Successful Run of the Program

以下是我使用键盘中断时引用的代码段:

# Since my userExpression string is going
# to have a variable length, I had to 
# initialize another variable to keep
# up with it and make sure that the while
# loop runs until the updated string ends.

truthList = truthMachine(propNum)
exprLength = len(userExpression)
while whileCounter < exprLength:
    if userExpression[whileCounter] in varDict:
        userExpression =  userExpression.replace(userExpression[whileCounter],"truthList[i][" + str(varDict[userExpression[whileCounter]]) + "]")
    exprLength = len(userExpression)
    whileCounter += 1

程序的这一部分只是在我创建的字典中将小写字母变量及其值切换。同样,它适用于字母表中的任何其他字母,我已经彻底测试了更复杂的逻辑命题,如果我不使用r,s,t或u,它们都可以工作。希望这里有人见过类似的东西。

0 个答案:

没有答案