<p>我正在调试我的程序,我很困惑为什么我的一个语句的计算结果是错误的。我正在检查数组中倒数第二个索引(它是一个字符串)是否以“\”字符开头。我正在为post-script编写一个解释器,这有助于我确定用户是否定义了一个变量ex:\x。为我检查的if语句的计算结果为false,我无法找出原因。有什么想法吗?在</p>
<pre><code>def psDef():
if(opstack[-2].startswith('\\')): # this is evaluating to false for some reason
name = opPop() #pop the name off the operand stack
value = opPop() #pop the value off the operand stack
define(name, value)
else:
print("Improper use of keyword: def")
def testLookup():
opPush("\n1")
opPush(3)
psDef()
if lookup("n1") != 3:
return False
return True
</code></pre>