#!/usr/bin/env python3
# -*- coding: utf-8 -*-

'''这是 "nester.py" 模块，提供了一个名为 print_lol() 的函数，
函数的作用是打印列表，其中有可能包含(也可能不包含)嵌套列表。'''

def print_lol(the_list, indent=False, level=0):

    '''
    这个函数取三个参数：
    第一个为位置参数，名为 "the_list"，这可以是任何 python 列表(也可以是包含嵌套列表的列表)。
    所指定的列表中的每个数据会(递归的)输出到屏幕上，每个数据项各占一行。
    第二个为可选参数，名为 "indent"，可取值布尔值 "True" 或者 "False"(默认)，表示是否进行缩进。
    第三个为可选参数，名为 "level" 用来标记当前列表的嵌套深度，会输入对应的缩进符。
    '''
    
    for each_item in the_list:
        if isinstance(each_item, list):
            print_lol(each_item, indent, level+1)
        else:
            if indent:
                for x in range(level):
                    print('\t', end='')
            print(each_item)