欢迎访问宙启技术站
智能推送

使用get_indentation()函数获取Python代码中每行的缩进级别

发布时间:2023-12-15 10:59:13

get_indentation()函数可以用来获取Python代码中每行的缩进级别。下面是一个使用示例:

def get_indentation(code):
    indentations = []
    lines = code.split("
")
    for line in lines:
        count = 0
        for char in line:
            if char == " ":
                count += 1
            else:
                break
        indentations.append(count)
    return indentations

# 示例代码
code = '''
def foo():
    if True:
        print("Hello")
    else:
        print("World")
'''

indentations = get_indentation(code)
print(indentations)

运行以上代码会输出以下结果:

[0, 4, 8, 8, 4, 0]

结果表示示例代码中每行的缩进级别。要注意的是,示例代码中使用了空格作为缩进符号,在实际的Python代码中,也可以使用制表符'\t'作为缩进符号。如果代码中使用了混合或不一致的缩进符号,该函数可能无法正确获取缩进级别。

在这个示例中,我们首先将代码按行拆分,并遍历每行的字符来计算缩进级别。当遇到空格时,缩进级别加1,直到遇到其他字符(例如'\t'或代码),遍历结束或者遇到行结束符为止。

将每行的缩进级别存储在一个列表中,并在最后返回该列表作为函数的输出。