python笔记1-列表,循环,递归函数

                  -------------------------------------------------------------------------

                       内容来自《head first python》的读书笔记

                  -------------------------------------------------------------------------

 

1.列表就像数组:

ist1=["I","love","python",2014]
ist1
['I', 'love', 'python', 2014]

 

列表的数据处理:

假设你得到一组数据

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

现在需要将movies的具体信息分别打印出来

2.以上问题怎么做呢,嵌套列表怎么遍历元素信息?

我想我们需要一个循环:

for each_item in movies:
    if isinstance(each_item, list):
        for nested_item in each_item:
            if isinstance(nested_item, list):
                for deeper_item in nested_item:
                    print(deeper_item)
            else:
                print(nested_item)
    else:
        print(each_item)

 

 3.思考一个问题,如果此时需要添加列表的元素,列表循环层数又要加深,而嵌套的函数基本是重复的代码,而不同的只有参数,因此,我们需要将这部分代码定义一个函数,实现参数化:

def print_lol(a_list):
    for each_item in a_list:
        if isinstance(each_item, list):
            print_lol(each_item)
        else:
            print(each_item)
            

print_lol(movies)

*.递归函数的规律:

  注意到以上代码,将嵌套功能某一层实现,将需要迭代的部分用定义的函数返回,即可不停调用,直到函数找到出口,这里的返回函数是:print_lol(each_item).

 

总结:

1.列表的概念以及创建,增加,删除,查找方法;

2.python的格式(列表创建格式,缩进格式,判断格式,循环格式,函数定义格式);

3.len(),isinstance()的用法;

4.递归的概念及应用

posted @ 2014-06-07 11:26  李雷雷alexkn  阅读(895)  评论(0)    收藏  举报