Python 缩进误差?蟒蛇3X

Python 缩进误差?蟒蛇3X,python,python-3.x,error-handling,Python,Python 3.x,Error Handling,Python3告诉我缩进有错误。我试过一百万种不同的压痕,但我迷路了。它并没有直接指向错误,只是指向一个括号,让我自己去弄清楚 import os for root, dirs, files in os.walk('C:\\Users\\Tom\\Desktop'): for file in files: if file.endswith('.txt'): f = open("test.txt", "r+") f.seek

Python3告诉我缩进有错误。我试过一百万种不同的压痕,但我迷路了。它并没有直接指向错误,只是指向一个括号,让我自己去弄清楚

import os

for root, dirs, files in os.walk('C:\\Users\\Tom\\Desktop'):
    for file in files:
        if file.endswith('.txt'):
            f = open("test.txt", "r+")
            f.seek(0)
        for line in f:
            a = f.read()
            f.seek(0)
        for char in a:
            o = ord(char)
            f.write(str(o))
            f.truncate()
抱歉,我忘了包含错误消息

File "C:\Users\Tom\Desktop\Search.py", line 6
    f = open("test.txt", "r+")
                             ^
TabError: inconsistent use of tabs and spaces in indentation

我将您的问题中的文本加载到文本编辑器vim中,并显示了不可见的字符,从而呈现了这一点

在这里,空格显示为空格,而tab显示为^I。正如您所看到的,如果第二行和第一行用空格缩进,那么文件的其余部分用制表符缩进

在一般意义上,这在Python中造成了真正的混乱,缩进在语法上对程序结构很重要

特别是在Python3中,将制表符和空格混合作为缩进是一个致命的编译错误。这就是您遇到的错误


请参阅,这建议只使用空格,而不使用制表符,并使用4-空格缩进。

我将问题中的文本加载到文本编辑器vim中,并显示不可见字符,从而呈现此问题

在这里,空格显示为空格,而tab显示为^I。正如您所看到的,如果第二行和第一行用空格缩进,那么文件的其余部分用制表符缩进

在一般意义上,这在Python中造成了真正的混乱,缩进在语法上对程序结构很重要

特别是在Python3中,将制表符和空格混合作为缩进是一个致命的编译错误。这就是您遇到的错误


请参阅,这建议只使用空格,而不使用制表符,并使用4-空格缩进。

如果使用记事本++,则必须更改设置以避免出现制表符,否则会造成混乱……确切的错误是什么?我该如何做,Jean François Fabre?错误消息中明确指出制表符和空格的使用不一致。是的,我不是说它错了,我是说我不确定错误在哪里,因为它指向的是括号,而不是不正确缩进的区域。让我不知所措。如果你使用记事本++,你必须更改设置以避免出现标签,否则会一团糟……确切的错误是什么?我该怎么做,Jean-François Fabre?它清楚地表明错误消息中标签和空格的使用不一致。是的,我没有声称这是错误的,我只是说我不确定错误在哪里,因为它指向的是一个括号,而不是一个缩进不当的区域。让我不知所措。视觉效果很好;-+谢谢你!这对我来说很有效,我的缩进后面有空格,这对我来说是一个常见的错误,哈哈。再次感谢!:我通常不会投反对票,但答案很好。应该是重复的标准答案。很好的视觉;-+谢谢你!这对我来说很有效,我的缩进后面有空格,这对我来说是一个常见的错误,哈哈。再次感谢!:我通常不会投反对票,但答案很好。应该是重复的标准答案。