Python中是否有空白缩进?

7
在开发过程中,有时需要暂时注释代码块以进行测试。有时,这些注释需要重新缩进代码片段,如果不小心操作很容易引入错误,那么是否存在一种“空缩进”操作符呢,类似于“pass”的相反操作? 示例:
def func(x):
    if x == 0:
        print("Test")

为了测试,我暂时注释掉了“if”语句,这会破坏缩进:

def func(x):
    # if x == 0:
        print("Test")

我希望能避免像这样的重新缩进,因为它只是一种临时改变,而且可能会使更复杂的代码混乱:

def func(x):
    # if x == 0:
    print("Test")

问题: 是否有类似的东西?

def func(x):
    # if x == 0:
    force_indent:
        print("Test")

当然,我可以按照以下方式做,只是我想知道是否有某种习语或更好的方法来做到这一点:
def func(x):
    # if x == 0:
    if True:
        print("Test")

2
有趣的问题。if True: 似乎是最接近这种行为的,但其他语句可能会更好。 - Eric Duminil
我没有答案,但我认为添加类似于 force_indent: 的东西和重新缩进一样慢。此外,在某些 IDE 中,您可以一次缩进整个部分。在 Spyder 中,您可以使用 tab 或 shift+tab 进行缩进或取消缩进。 - Guimoute
1
对我来说,解决方案很明显:根本不要注释代码,如果你正在使用调试器,那么可以将条件从“x == 0”更改为“debug or x == 0”。 - Azat Ibrakov
3
“if True: # x==0:” 看起来是最简单的方法。 - khelwood
2
如果你想少打几个字符,你也可以使用 if 1:。但正如 @khelwood 所说的那样,if 1: # x==0: 更加简洁。 - Jacob Tomlinson
显示剩余5条评论
1个回答

3

在我看来,最简单的方法是在你的 if 语句中插入 True: #

因此

if x==0:

变成

if True: # x==0

您的缩进可以保持不变,旧条件仍然清晰易懂且容易回溯。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接