我如何缩进if循环是否存在问题?

时间:2019-10-19 23:44:52

标签: python python-3.x

我正在学习python,并且正在制作图形。它工作了一段时间,制作了一个窗口并显示正确的图形,但是以某种方式我弄乱了格式,现在在运行程序时它总是显示错误。

我已经尝试过删除格式化,并让VS Code为我自动格式化,但是它仍然显示相同的错误。

这里是first.py

from graphics import *
import time
def isset(v):
    return v in locals() or v in globals()  
a = GraphWin('Test', 1000, 800)
a.setCoords(1000, -800, -1000, 800)
a.setBackground('white')
b = Entry(Point(0, 0), 20)
b.setFill('white')
b.draw(a);
c = Text(Point(0, 80), 'What is your name?')
c.draw(a)
while True:
    key = a.checkKey()
    if key == 'Return':
        if b.getText():
            d = Text(Point(0, 0), 'Hello, '+str(b.getText())+'!')
        b.setText('')
        b.undraw()
        c.undraw()
        d.draw(a)
        time.sleep(2)
        d.undraw()
        b.draw(a)
        c = Text(Point(0, 80), 'How old are you?')
        c.draw(a)
        break

while True:
    key = a.checkKey()
    if key == 'Return':
        if b.getText():
            d = Text(Point(0, 0), 'You are '+str(b.getText())+' years old!')
            b.undraw()
            c.undraw()
            d.draw(a)
            time.sleep(1)
        for i in range(5, 0, -1):
            if isset('e'):
                e.undraw()
            e = Text(Point(0, -80), 'Window closing in: '+str(i))
            e.draw(a)
            time.sleep(1)
            break

这是终端输出:

$ python3 first.py
  File "first.py", line 17
    d = Text(Point(0, 0), 'Hello, '+str(b.getText())+'!')
                                                        ^
TabError: inconsistent use of tabs and spaces in indentation

请告诉我我做错了!

我无法弄清我的一生,我的代码正在发生什么,这使我发疯。

1 个答案:

答案 0 :(得分:1)

您正在使用空格和制表符进行缩进。只要您保持一致,Python就会接受两者。使用制表符或空格,不能同时使用。