zoukankan      html  css  js  c++  java
  • python随笔3(操作列表)

    3.1遍历整个列表

    你经常需要遍历列表的所有元素,对每个元素执行相同的操作。可以使用python中的for循环。

    magicians.py

    magicians = ['alice','david','carolina']
    for magician in magicians:
         print(magician)
    
    >>>alice
       david
       carolina

    深入研究循环

    在magicians.py中使用的简单循环中,python首先读取其中的一行代码:

    for magician in magicians:

    这行代码让python获取列表magicians中的第一个值(‘alice’),并将其存储到变量magician中。接下来,python读取下一行代码:

    print(magician)

    它让python打印magician的值——依然是’alice’。鉴于该列表还包含其他值,python返回到循环的第一行:

    for magician in magicians:

    python获取列表中的下一个名字——’david’,并将其存储到变量magician中,再执行循环体代码。依此往复,直到for循环后面没有其他的代码。另外,对于用于存储列表中每个值的临时变量,可以指定任何名称。

    3.2创建数值列表

    使用函数range()

    函数range()让你能轻松生成一系列数字。

    for value in range(1,5):
         print(vale)
    
    1
    2
    3
    4

    函数range()让python从你指定的第一个值开始数,并在到达你指定的第二个值后停止,因此输出不包含第二个值。使用range()时如果不符合预期,尝试+1或-1。

    使用range()创建数字列表

    要创建数字列表,可使用函数 list() 将 range() 的结果直接转换为列表。

    numbers = list(range(1,6))
    print(numbers)
    
    >>>[1,2,3,4,5]

    使用函数range()时,还可指定步长。如要打印1~10内的偶数。

    even_numbers = list(range(2,11,2))
    print(even_numbers)
    
    >>>[2,4,6,8,10]

    函数range()从2开始,然后不断加2。

    使用函数range()几乎能够创建任何需要的数字集。例如,创建一个包含前10个整数的平方列表。在python中,两个星号(**)表示乘方运算。

    squares = []
    for value in range(1,11):
        squrare = value**2
        squares.append(squrare)
    print(squares)
    
    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

    还可以不使用临时变量,直接将每个计算得到的值附加到列表末尾:

    squares = []
    for value in range(1,11):
        squares.append(value**2)
    print(squares)

    对数字列表执行简单的统计计算

    digits = [1,2,3,4,5,6,7,8,9,0]
    min(digits)
    max(digits)
    sum(digits)

    列表解析

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

    squares = [value**2 for value in range(1,11)]
    print(squares)

    要使用这种语法,首先指定一个描述性的列表名,如squares;然后,指定一个左方括号,并定义一个表达式,用于生成你要存储到列表中的值。在这个示例中,表达式为value**2.接下来编写一个for循环,用于给表达式提供值,再加上右括号。

    3.3使用列表的一部分

    切片

    要创建切片,可指定要使用的第一个元素的索引和最后一个元素的索引加1。要输出列表中的前3个元素,需要指定索引0~3,这将输出0,1,2。

    players = ['a','b','c','d','e']
    print(players[0:3])
    
    >>>['a', 'b', 'c']

    列如你要取列表第2到4个元素,可以指定索引为1,4。如果没有指定第一个索引,python将自动从列表头开始提取:同理,不指定最后一个索引,python将自动从第一个索引到列表末尾。

    负数索引返回离列表末尾相应距离的元素。例如,如果你要输出最后3个元素,可使用切片players[-3:]。

    players = ['a','b','c','d','e']
    print(players[-3:])
    
    >>>['c', 'd', 'e']

    遍历切片

    如果要遍历列表中的部分元素,可再for循环中使用切片。

    players = ['a','b','c','d','e']
    for player in players[:3]:
        print(player.title())
    
    A
    B
    C

    复制列表

    要复制列表,可创建一个包含整个列表的切片。

    my_love = ['a','b','c','d','e']
    friend_love = my_love[:]
    print(my_love)
    print(friend_love)
    
    ['a', 'b', 'c', 'd', 'e']
    ['a', 'b', 'c', 'd', 'e']

    3.4元组

    python将不能修改的值称为不可变的,而不可变的列表称为元组。

    定义元组

    例如,有一个大小不能变的矩形,可将其长宽存储在一个元组中,从而确保它们不可修改。

    dimensions = (200,50)
    print(dimensions[0])
    print(dimensions[1])
    
    200
    50

    遍历元组中的所有值

    像列表一样,元组也可以用for循环来遍历。

    dimensions = (200,50)
    for dimension in dimensions:
        print(dimension)
    
    200
    50

    修改元组变量

    虽然不能修改元组的元素,但可以给存储元组的变量赋值。因此要修改矩形的尺寸,可重新定义整个元组

    dimensions = (200,50)
    for dimension in dimensions:
        print(dimension)
    
    dimensions = (400,100)
    for dimension in dimensions:
        print(dimension)
    
    
    200
    50
    400
    100
  • 相关阅读:
    如何创建并运行Java线程
    PHP捕获Fatal error错误与异常处理
    WEB系统启动时加载Log4j的配置文件
    Log4j日志配置
    CharacterEncodingFilter-Spring字符编码过滤器
    Struts2的属性驱动与模型驱动的区别
    Filter之——GZIP全站压缩
    乱码问题总结
    【总结】编写自己的JDBC框架
    四大域总结
  • 原文地址:https://www.cnblogs.com/wf1017/p/9172383.html
Copyright © 2011-2022 走看看