Python 为什么在for语句末尾使用“:”会出现语法错误?

Python 为什么在for语句末尾使用“:”会出现语法错误?,python,testing,syntax,Python,Testing,Syntax,我正在用python编写我的赋值,这是一个简单的二进制计算程序。由于某种原因,当我执行该程序时,我得到了一个语法错误,我不理解,因为有人告诉我,for循环或while循环结束时的“:”对于这一点至关重要,就像if/elif/else语句一样 该代码区域整个部分的代码为: for m in range(binaryCountingVariable): countingDecimalVariable = m + 1 countingBinaryVariable = '' wh

我正在用python编写我的赋值,这是一个简单的二进制计算程序。由于某种原因,当我执行该程序时,我得到了一个语法错误,我不理解,因为有人告诉我,for循环或while循环结束时的“:”对于这一点至关重要,就像if/elif/else语句一样

该代码区域整个部分的代码为:

for m in range(binaryCountingVariable):
    countingDecimalVariable = m + 1
    countingBinaryVariable = ''
    while countingDecimalVariable != 0:
        countingDecimalRemainder = countingDecimalVariable % 2
        countingBinaryVariable = countingBinaryVariable + str(countingDecimalRemainder)
        countingDecimalVariable = countingDecimalVariable // 2
    print('Decimal:', i, '= Binary:', countingBinaryVariable[::-1], sep='')

语法错误行号有时不准确。请给我们看几行for之前的代码。或者,理想情况下,在for语句之前提供一个完整的.maybe行。我打赌括号或括号在前一行是不平衡的。@BenMorris:binaryCountingVariable的无效值不会是语法错误。@Kevin:与其说它们不准确,不如说错误在逻辑行,而不是物理行。如果前一个物理行上缺少或,则逻辑行继续到下一个物理行,然后发现错误就在那里。