Python标签是假的还是真的

Python标签是假的还是真的,python,character-encoding,Python,Character Encoding,许多教程建议用户使用宽度为4的制表符,而4是使用空格而不是真正的制表符。使用real tab也可以,那么为什么人们建议使用4的空格而不是real tab呢?我是一个python初学者,困惑吗 [更新] 谢谢我现在切换到4的空格 在my.vimrc中添加了以下内容 “蟒蛇 对于其他情况: set noexpandtab " tabs are tabs, not spaces Python编译器认为制表符相当于8个空格的缩进。如果愿意,可以使用制表符,但混合使用制表符

许多教程建议用户使用宽度为4的制表符,而4是使用空格而不是真正的制表符。使用real tab也可以,那么为什么人们建议使用4的空格而不是real tab呢?我是一个python初学者,困惑吗

[更新] 谢谢我现在切换到4的空格

在my.vimrc中添加了以下内容 “蟒蛇

对于其他情况:

set noexpandtab                " tabs are tabs, not spaces

Python编译器认为制表符相当于8个空格的缩进。如果愿意,可以使用制表符,但混合使用制表符和空格会导致棘手的调试错误,这就是为什么建议使用空格。

Python编译器认为制表符相当于8个空格的缩进。您可以使用制表符,如果您愿意,但混合制表符和空格会导致棘手的调试错误,这就是为什么建议使用空格。

一旦您允许在文件中使用制表符字符,您将最终遇到制表符和空格混合的情况,然后您将开始出现解析错误。当多人处理一个制表符时,情况会变得更糟项目,并使其间距设置彼此不同

PEP8建议使用“4个空格”:


这个建议是根据经验提出的,它解决了在Python中混合制表符和空格所带来的各种问题。为了省去您的痛苦,最好是在Python代码中使用4个空格。

一旦您允许在文件中使用制表符,您将陷入制表符和空格混合的情况,然后将开始出现分析错误。如果多人在处理一个项目,并且他们的间距设置彼此不同,情况会变得更糟

PEP8建议使用“4个空格”:


这个建议是根据经验,处理Python中混合制表符和空格的各种问题。要节省自己的痛苦,最好使用Python代码的4个空间。

< P>我唯一可以考虑的原因可能是,如果你没有设置编辑器使用<代码> TabSt止=4 < /C>(比如说,在VIM中)您的代码行会更长,阅读这样的代码会很不方便。我认为唯一的规则应该是不要将制表符和空格混合在一起(我见过代码中,单缩进是四个空格,而双缩进是一个制表符。这太可怕了。)我可以考虑的唯一原因可能是,如果你没有建立你的编辑器使用<代码> TabSt止=4 < /Cube >(例如,在VIM),你的代码行会更长,而且不方便阅读这样的代码。我认为唯一的规则应该是不混合标签和空格。(我看过一段代码,其中单缩进是四个空格,而双缩进是一个制表符。太可怕了。)

如果不是大多数的话,很多编辑器都会将选项卡内联转换为用户定义的空格数。如果将其设置为4,那么您就没有任何空间了。当您所在的团队没有按照4空格的概念进行标准化时,真正的痛苦就来了。

如果不是大多数的话,很多编辑器都会将选项卡内联转换为用户定义的空格数。设置为从t到4,你就不用在家了。当你所在的团队没有对4个空格的概念进行标准化时,真正的痛苦就来了。

可能重复的可能重复的可能重复的可能重复的可能我不会遇到标签和空格混在一起的情况,因为我的文本编辑器已经被正确指示不要将它们混在一起。考虑到没有大脑死亡的情况,标签不难正确使用整个要点是允许人们“有不同的间距设置”"-在不改变文本的情况下,以最具可读性的缩进量查看代码。在每种编程语言中,我都使用制表符缩进,并将它们设置为2个空格,因为这在我看来是正确的。但显然这都是异端邪说。我也更喜欢使用2个空格的制表符。我不会遇到混合制表符的情况和空格,因为我的文本编辑器已经被正确地指示不要混合使用它们。标签不难正确使用,因为没有大脑死亡的编辑器,整个要点是允许人们“让他们的间距设置彼此不同”-在不改变文本的情况下,以最具可读性的缩进量查看代码。在每种编程语言中,我都使用制表符缩进,并将它们设置为2个空格,因为这在我看来是正确的。但显然这都是异端邪说。我也更喜欢2个空格的制表符。默认情况下,Visual Studio将设置为IIRC4个空格的缩进,但会自动将8个空格的集合替换为制表符,同时将它们显示为8个空格宽。也许这些不是默认设置,但我见过很多这样格式化的代码。这太丢脸了。我真的不明白为什么对这么多人来说,制表符的正确使用显然如此困难,以至于它们都是广告完全反对。@Karl我更喜欢使用制表符,因为项目中的每个人都可以让她/他的编辑器根据需要显示它(2、4或全部8个空格)。或3、5或……我不认为我会理解这些人,但我不会歧视他们。:)IIRC,Visual Studio将默认设置4个空格的缩进,但会自动将8个空格的集合替换为制表符,同时将它们显示为8个空格宽。也许这些不是默认设置,但我见过很多这样格式化的代码。这很丢脸。我真的不明白为什么对这么多人来说,制表符的正确使用显然如此困难Karl我更喜欢使用标签,因为项目中的每个人都可以让她/他的编辑器根据需要显示它(2、4或全部8个空格)。或者3、5或…我不认为我会理解这些人,但我不会歧视他们。:)顺便说一句,如果您认为由于混合使用制表符和空格可能会遇到问题,那么您可能应该查看
tabnanny
模块。现在禁止在同一缩进中混合制表符和空格,因此
set noexpandtab                " tabs are tabs, not spaces