美文网首页
《Python编程:从入门到实践》笔记 第四章 操作列表

《Python编程:从入门到实践》笔记 第四章 操作列表

作者: gg大宇 | 来源:发表于2019-04-20 19:31 被阅读0次

    遍历列表

    for循环实现:


    image.png

    这行代码让python从列表magicians中取出一个名字,并将其存储在变量magician中,最后让python打印magician中的名字:


    image.png

    python执行这个循环的整个过程:
    python首先将读取第一行代码for magician in magicians:
    这行代码让python获取列表magicians中的第一个值(“alice”),并将其存储到变量magician中,接下来python去读取下一行代码:print(magician),它让python打印magician的值—依然是‘alice’。
    因为列表中还有其他值,python返回到循环的第一行,也就是for magician in magicians:对列表中的剩余所有值进行如上操作。
    对于编写for循环时,对于用于存储列表中每个值的临时变量,可指定任何名称。
    利用缩进可以在for循环内多执行一些操作:


    image.png 结果.png

    for循环结束后执行一些操作:
    只需要将相应的代码放在for循环后面,且不缩进即可:


    image.png image.png

    由此可以看出python是根据缩进来判断代码与前一个代码行的关系。
    magician在for循环结束后,里面存的值是carolina,而且,这时候如果执行print(magician[1]),打印的是a,它会把carolina也变成一个列表(自己瞎琢磨的,也不知道对不对,但是实际输出确实是这个)

    数值列表

    存储一组数字的集合。
    比如在数据可视化中,处理的几乎都是由数字(如温度、距离、人口数量、经度和纬度)组成的集合。

    range()函数
    image.png image.png

    上述代码好像应该打印1-5,但实际只是打印数字1-4。
    函数range()让python从你指定的第一个值开始数,并在到达你指定的第二个值后停止,因此输出不包含第二个值(也就是这里的5)。

    使用range()创建数字列表

    使用函数list()将range()的结果直接转换为列表。如果将range()作为list()的参数,输出将为一个数字列表。


    image.png image.png

    使用函数range()时,还可以指定步长,例如,下面是打印1~10内的偶数:


    image.png image.png

    将前10个证书的平方加入到一个列表中:


    image.png image.png

    当然程序也可以更简洁一些:


    image.png
    min max sum
    image.png image.png

    列表解析

    列表解析将for循环和创建新元素的代码合并成一行,并自动附加新元素


    image.png image.png

    代码的解释:首先指定一个描述性的列表名,如squares;然后指定一个左方括号,并定义一个表达式,用于生成你要存储到列表中的值,在这个代码中,表达式为value ** 2,它计算平方值,然后编写一个for循环,用于给表达式提供值,再加上右方括号。for循环为for value in range(1,11),它将值1~10提供给表达式value**2.注意这里的for语句末尾没有冒号。

    切片

    所谓切片就是处理列表的部分元素
    创建切片,可指定要使用的第一个元素和最后一个元素的索引。与函数range()一样。比如你指定索引0-3,输出的是0、1、2的元素

    image.png image.png

    这里打印的就是该列表的切片,只包含三名队员。输出的也是一个列表。
    如果没有指定起始索引,python从列表开头开始提取:


    image.png

    要让切片终止与列表末尾,也可使用类似的语法。比如:


    image.png

    负数索引返回离列表末尾相应距离的元素。
    例如:


    image.png

    遍历切片

    在for循环中使用切片:


    image.png

    复制列表

    可以创建一个包含整个列表的切片,方法是同时省略起始索引和终止索引( [ : ] )


    image.png

    为了表明我们是两个列表,分别用append方法来添加'cannoli'和'ice cream'看打印结果 得到的也是我们想要的结果。
    而如果我们仅仅是简单地将my_foods赋给friend_foods的话:


    image.png

    可以看到并不是将my_foods的副本存储到friend_foods。这种语法实际上是让python将新变量friend_foods关联到包含在my_foods中的列表,因此这两个变量都指向同一个列表,所以说我们将cannoli添加到my_foods中时,它也将出现在friend_foods中。

    元组

    元组看起来犹如列表,但使用圆括号而不是方括号来标识。
    定义元组后,就可以使用索引来访问其元素,就像访问列表元素一样。
    元组的值不能被修改
    跟列表的操作其实都一样:

    image.png

    尝试修改会报错:


    image.png

    虽然不能修改元组的元素,但可以给存储元组的变量赋值,重新定义整个元组:


    image.png

    相关文章

      网友评论

          本文标题:《Python编程:从入门到实践》笔记 第四章 操作列表

          本文链接:https://www.haomeiwen.com/subject/yidlgqtx.html