为什么 IDLE 在我的代码后添加一个换行符?

Why does IDLE add a newline after my code?

在我保存 .py 文件时,IDLE (Python 3.9 x64) 将在代码本身之后添加一个换行符。它在让我好奇的同时引发了我的强迫症。例如,在编码时采用完全原始的程序最后一行:

print("Hello, world!")

然而,保存后,它变成:

print("Hello, world!")
# ghost line!

那条额外的线有什么意义——我可以把它关掉吗?

Python的最佳做法是在代码末尾多出一行。如果您明确删除最后一行,那么它就不会存在。但是,我的建议是保留它。遵循最佳实践总是更好。

IDLE 确保保存的文件自 2000 年首次提交以来以换行符 ('\n') 结尾。我相信 Python 编译器曾经要求每一行,包括最后一个,完整,以换行符结尾。在某些情况下,现在可能更宽松,但我不确定。可能还有其他一些需要正确结尾的文件。

鬼不存在,鬼线也不存在。一行 0 个字符并不是真正的一行。最后一行后左边距的光标准备开始新的一行。