美文网首页
Python列表操作:遍历、range()、列表解析、列表切片、

Python列表操作:遍历、range()、列表解析、列表切片、

作者: wangawu121 | 来源:发表于2020-04-24 00:39 被阅读0次

    列表操作:遍历、range()、列表解析、列表切片、列表复制、元组

    1. 遍历列表

    letters = ['A','B','C','D','E','F','G']
    for letter in letters:
        print(letter)
        
    输出:
    A
    B
    C
    D
    E
    F
    G
    

    记得for ...... :有冒号,循环内容要缩进(indent)来表示它属于当前循环。

    缩进约定俗成打4个空格。

    2. range()

    range能生成一系列数字。几乎所有语言在数字范围上都遵循[left, right)的做法,故range(left, right)会生成一系列从left到right-1、步长为1的数字。

    nums = list(range(0,10))
    print(nums)
    
    输出:
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    

    其他用法:

    #循环内使用
    for value in range(1,5):
        print(value)
        
    #设置步长:range(left,right,步长)
    even_numbers = list(range(2,11,2)) #2 4 6 8 10
    

    3. 列表解析

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

    用法:

    1. 首先指定一个描述性的列表名(squares
    2. 然后,指定一个左方括号,并定义一个表达式(value**2),用于生成你要存储到列表中的值。
    3. 编写一个for循环,用于给表达式提供值,再加上右方括号。

    4. 列表切片

    letters = ['A','B','C','D','E','F','G']
    
    #用letters[left,right]来切出索引为left到right-1的这部分列表
    print(letters[0:3]) # A B C
    
    #省略左界,将自动从列表开头开始
    print(letters[:4]) # A B C D
    
    #省略右界,将终止于列表尾
    print(letters[3:]) # D E F G
    
    #也可以用负的左界,并省略右界,表示切出倒数几个元素
    print(letters[-3:]) #最后三个字母,E F G
    
    #复制整个列表
    letters_copy = letters[:] #列表letters_copy内容和letters一样
    

    注意:

    在上面的复制中,letters_copy = letters[:]将拷贝一份letters的内容到letters_copy里,如果你写letters_copy = letters,这将把letters赋给letter_copy从而使两者指向同一个变量:

    letters = ['A','B','C','D','E','F','G']
    letters_copy = letters
    letters.append('1')
    letters_copy.append('2')
    print(letters)
    print(letters_copy)
    
    输出:
    ['A', 'B', 'C', 'D', 'E', 'F', 'G', '1', '2']
    ['A', 'B', 'C', 'D', 'E', 'F', 'G', '1', '2']
    

    可以看到letters_copy = letters将使两者成为同一个变量。

    5.元组

    元组使用()而不是[],我们可以改变整个元组,而不能改变元组的元素。

    #访问元素
    dimensions = (200, 50) #定义元组
    print(dimensions[0])
    print(dimensions[1])
    
    输出:
    200
    50
    
    #遍历元素
    for dimension in dimensions:
        print(dimension)
        
    输出:
    200
    50
    
    #修改元组
    dimensions = (200,50)
    dimensions = (400,100) #正确,可以直接修改整个元组
    
    dimensions[0] = 10086 #错误,不能修改元组的元素
    

    相关文章

      网友评论

          本文标题:Python列表操作:遍历、range()、列表解析、列表切片、

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