目前我从来没有遇到Python中的空白问题(尽管我只在两个项目中使用它而且我是唯一的程序员).对于学习该语言的人来说,Python中的空格和缩进有哪些潜在的缺陷?
在一些编辑器中可能会令人困惑,其中一行用空格缩进,而下一行用缩进键缩进.这是令人困惑的,因为缩进看起来相同但导致错误.
另外,当您的复制代码时,如果您的编辑器没有缩进整个块的功能,那么修复所有缩进可能会很烦人.
但是通过一个好的编辑器和一些练习,这应该不是问题.我个人非常喜欢Python使用空白的方式.
是的,有一些陷阱,但大多数时候,在实践中,它们变成了Quixotic风格的敌人风车,即虚构的,没有什么可担心的.
我估计最有可能遇到的陷阱是(包括确定的缓解措施):
与他人合作又称合作
一个.如果你有其他人因为某种原因拒绝遵守PEP 8,那么维护代码可能会变得很痛苦.一旦我向他们指出python的几乎普遍的约定是缩进级别==四个空格,我在实践中从未见过这个
湾 让你工作的任何人/每个人接受约定并让他们弄清楚如何让他们的编辑器自动执行它(或者更好,如果你使用相同的编辑器,告诉他们如何配置它),这样复制和粘贴东西才有效.
如果你当前首选的编辑器不是python友好的 - 不是真正的陷阱,更多的投资要求,以避免与复制和粘贴相关的其他陷阱,不得不投资一个"体面的"编辑器,而不是你当前首选的编辑器,重新分解,等等停止使用记事本,你会在早上感谢自己.
一个.在理解的编辑器下,编辑代码的效率会更高python
湾 大多数现代代码编辑都能很好地处理python.我自己更喜欢GNU Emacs,最近的版本python-mode
提供了开箱即用的出色支持.还有很多其他编辑要探索,包括许多免费的替代品和IDE.
C.python本身就是一个开箱即用的"智能"python编辑器idle
.如果您不熟悉,请查看它,因为它可能已经在您的python安装中提供,甚至可能python
比您当前的编辑器更好. PyCrust是python中实现的python编辑器的另一个选项,它是wxPython的一部分.
一些包含python的代码生成或模板环境(想想HTML生成或python CGI/WSGI应用程序)可能会有怪癖
一个.大多数人,如果他们触摸python,已经采取措施将python的性质最小化作为一个问题,但它仍然偶尔出现.
湾 如果你遇到这个问题,请熟悉框架作者已经采取的步骤,以尽量减少影响,并阅读他们的建议(是的,如果在他们的项目中遇到过,他们会有一些),并且很容易避免与python相关的陷阱.