大叔资源备忘录

nester.py自定义函数-打印列表-Python代码

[code]

"""这是“nester.py”模块,提供了一个名为print_lol的函数,这个函数的作用是打印列表,其中有可能包含(也可能不包含)嵌套列表"""
def print_lol(the_list):
    """这个函数取一个位置参数,名为“the_list”,这可以是任何Python列表(也可以是包含嵌套列表的列表)。所指定的列表中的每个数据项会(递归地)输出到时屏幕上,各数据项各占一行。"""
    for each_item in the_list:
        if isinstance(each_item,list):
            print_lol(each_item)
        else:
            print(each_item)

[/code]


2017年8月2日修订:

[code]

def print_lol(the_list,indent=False,level=0):
    """这个函数取一个位置参数,名为“the_list”,这可以是任何Python列表(也可以是包含嵌套列表的列表)。所指定的列表中的
       每个数据项会(递归地)输出到时屏幕上,各数据项各占一行。
       第二个参数(名为“indent”)可选参数,默认为False,默认情况下不打开缩进特性。
       第三个参数(名为“level”)可选参数,默认为0,用来在遇到嵌套列表时插入制表符。"""
    for each_item in the_list:
        if isinstance(each_item,list):
            print_lol(each_item,indent,level+1)
        else:
            if indent:  #控制是事打开缩进特性
                for tab_stop in range(level): #使用“level”的值来控制使用多少个制表符
                    print("\t",end=' ')     #每一层缩进显示一个TAB制表符。
            print(each_item)

print_lol(movies,False,2)

[/code]

退出移动版