Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/145.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Graphserver中的Python缩进&x27;s代码_Python_Indentation - Fatal编程技术网

Graphserver中的Python缩进&x27;s代码

Graphserver中的Python缩进&x27;s代码,python,indentation,Python,Indentation,我正在读来自的代码。 还有一个函数有奇怪的缩进(从底部开始第5行计数,从底部开始第1行计数): 第五行有一个制表符,我的vim设置为显示缩进4。底部收益线有一个制表符加上四个空格。所有其他行都以空格开头 我认为这样的代码会产生不一致性,这在Python中是个问题。但是代码似乎运行得很好(我不知道是否正确运行,它可能正确)。python是否只是说ok一个制表符等于8个空格,并将其解释为ok?我让Python 2.6运行。是的,Python认为一个制表符(最多)是8个空格,即每8个字符有一个制表位

我正在读来自的代码。 还有一个函数有奇怪的缩进(从底部开始第5行计数,从底部开始第1行计数):

第五行有一个制表符,我的vim设置为显示缩进4。底部收益线有一个制表符加上四个空格。所有其他行都以空格开头


我认为这样的代码会产生不一致性,这在Python中是个问题。但是代码似乎运行得很好(我不知道是否正确运行,它可能正确)。python是否只是说ok一个制表符等于8个空格,并将其解释为ok?我让Python 2.6运行。

是的,Python认为一个制表符(最多)是8个空格,即每8个字符有一个制表位。所以在PythonVision中,这个奇怪的缩进
yield
行实际上和它周围的其他行对齐


这就是使用混合选项卡和空格的危险。使用
-tt
命令行选项调用Python,使其在此类文件上抛出错误。

不要混合使用制表符和空格!这是一般规则…

不完全是这样的:当处理一行时,“首先,制表符被替换(从左到右)为一到八个空格,这样替换前后的字符总数是八的倍数(这与Unix使用的规则相同)。”您在技术上是正确的。。。最好的一种是正确的!更新了我的答案。