nester.py三个版本

本文介绍了一个用于打印嵌套列表的Python函数的三个不同版本。这些版本包括基础打印、带缩进打印及可控缩进打印,展示了如何递归处理包含字符串和列表的复杂数据结构。

movies=[
    "The Holy Grail",1975,"Terry Joines & Terry Gilliam",91,
        ["Graham Chapman",
             ["Michael Palin","John Cleese","Terry Gilliam","Eric"]]]

"""
#versin 1.0
def print_lol(the_list):
    for each_item in the_list:
        if  isinstance(each_item,list):
            print_lol(each_item)
        else:
            print(each_item)
"""
"""
#version 2.0
def print_lol(the_list,level):
    for each_item in the_list:
        if isinstance(each_item,list):
            print_lol(each_item,level+1)
        else:
            for tab_stop in range(level):
                print('\t',end='')
            print(each_item)
"""
#version 3.0
def print_lol(the_list,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):
                    print("\t",end='')

            print(each_item)

version1.0只是单纯的打印列表

print_lol(movies)

version2.0打印列表的同时增加了行缩进的功能

print_lol(movies,2)

version3.0打印列表增加了行缩进功能的开关,可以缩进也可以不缩进,根据参数设置true false

print_lol(movies,True,2)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值