我正在尝试修复 Python 脚本中的一些缩进错误。有没有办法在线或使用其他实用程序自动更正错误?
我希望这个错误很熟悉,但又想避免这种情况。有没有编辑帮助解决这些问题?
IndentationError:需要一个缩进块
一般情况下是不可能的,因为有些情况会模棱两可:
something = foo()
if something:
something.bar()
print("ok") # Only half indented. Should this be inside or outside of the if statement?
最好找到一个支持自动缩进的编辑器,并确保正确缩进(即使是在没有明显空格的语言中,因为它使您的代码更易于阅读)。
你可以使用 reindent.py
对我来说,它对某些文件有效,但对其他文件无效。试一试。 reindent.py
使用:
reindent.py <filename>.py
更改 Python (.py) 文件以使用 4 个空格缩进并且没有硬制表符。
还修剪行尾多余的空格和制表符,并删除空行 在文件的末尾。
当您忘记在需要缩进的语句(即
if
或 for
)后添加缩进块时,通常会发生此特定错误。您可能忘记缩进所需的块或不小心按下退格键(或其他东西),例如
def sayhello():
print "Hello world!"
有时您不希望在 if 语句或 try/except 语句之后有任何代码,但 python 至少需要在它们之后一行,因此您可以使用
pass
关键字
try:
x= 4/0
except:
pass
print x
def editorMiss(text):
count = 0
for ch in text:
if (ch >= 'a' and ch <= 'z') or (ch >= 'A' and ch <= 'Z'):
pass
elif (ch >= '0' and ch <= '9'):
pass
else:
if ch == " ":
pass
else:
count = count + 1
return count