Python的制表符是伪的还是实的
很多教程建议用户使用宽度为4的制表符,但实际上是用空格来代替真正的制表符。使用真正的制表符也可以,那为什么大家都建议用4个空格而不是实际的制表符呢?我作为一个Python初学者,感到很困惑????
[更新] 感谢大家!我现在开始使用4个空格了。
我在我的.vimrc文件中添加了以下内容:
"Python
au BufRead,BufNewFile *.py,*pyw set shiftwidth=4
au BufRead,BufNewFile *.py,*.pyw set expandtab
fu Select_c_style()
if search('^\t', 'n', 150)
set shiftwidth=8
set noexpandtab
el
set shiftwidth=4
set expandtab
en
endf
对于其他情况:
set noexpandtab " tabs are tabs, not spaces
4 个回答
1
我能想到的唯一原因是,如果你没有把编辑器设置成使用 tabstop=4
(比如在 VIM 编辑器里),那么你的代码行可能会变得很长,这样阅读起来就会很不方便。我的建议是,尽量不要混用制表符和空格。我见过一些代码,单个缩进用的是四个空格,而双重缩进却用的是一个制表符,这样看起来真的很糟糕。
2
Python编译器把一个制表符(Tab)当作8个空格的缩进来处理。你可以选择使用制表符,但如果把制表符和空格混在一起用,就会出现很难调试的错误。因此,建议大家还是统一使用空格来缩进。
1
一旦你在文件中使用了制表符(Tab),就会出现混合使用制表符和空格的情况,这样就容易导致解析错误。尤其是在多个开发者一起合作的时候,如果他们的空格设置不一致,问题会更加严重。
PEP8建议使用“4个空格”:http://www.python.org/dev/peps/pep-0008/
这个建议是基于经验的,因为在Python中混合使用制表符和空格会带来很多麻烦。为了避免这些麻烦,最好还是统一使用4个空格来编写你的Python代码。