美文网首页
6 再识Python列表

6 再识Python列表

作者: 陪伴_520 | 来源:发表于2018-12-28 14:44 被阅读0次

    用 for 循环遍历列表

    #用 for 循环遍历列表
    names = ['zong hui', 'li guojian', 'liu peipei', 'dafan', 'hongdou', 'And..']
    for friends in names:
        print(friends)
    print("---------------------------->修改下人名显示格式")
    for friends in names:
        print(friends.title() + " is a good friend!")
    print("\tThank you!")
    #观察运行结果,循环是用缩进来确定循环体的 
    
    print("---------------------------->最喜欢的动物")
    #section practise --> animals
    animals = ['dog', 'cat', 'pig', 'bird', 'rabbit']
    print("There are some animals:")
    for animal in animals:
        message = animal.title()
        print(message)
    print(animals[0].title() + " is my favourite animal!")   
    

    运行结果
    zong hui
    li guojian
    liu peipei
    dafan
    hongdou
    And..
    ---------------------------->修改下人名显示格式
    Zong Hui is a good friend!
    Li Guojian is a good friend!
    Liu Peipei is a good friend!
    Dafan is a good friend!
    Hongdou is a good friend!
    And.. is a good friend!
    Thank you!
    ---------------------------->最喜欢的动物
    There are some animals:
    Dog
    Cat
    Pig
    Bird
    Rabbit
    Dog is my favourite animal!

    创建数字列表

    #创建数字列表 --> range(a, b, σ)
    #使用range()打印一系列的数
    for value in range(1, 6):
        print(value)  #注意输出是1—5,range()函数是到后一个数为止,不算最后的数。--“差一行为”
    
    number = list(range(1, 10))
    print(number)     #用list()函数创建数字列表
    
    print("-----------------------------")
    #用range()输出前5位奇数
    number = list(range(1, 10, 2)) #range()函数可定义步长,此处步长为2
    print(number)
    
    print("----------------------------")
    #创建一个前10个整数的平方的列表
    squares = []
    for value in range(1, 11):
        squares.append(value ** 2) #还记得吧,append()是把值添加到列表的末尾
    print(squares)
    
    print("----------------------------")
    #对创建的列表作简单的计算
    number =[19, 21, 25, 6, 9, 11, 17]
    print('min is ' + str(min(number))) 
    print('max is ' + str(max(number)))
    print('sum is ' + str(sum(number)))
    

    运行结果
    1
    2
    3
    4
    5
    [1, 2, 3, 4, 5, 6, 7, 8, 9]


    [1, 3, 5, 7, 9]

    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

    min is 6
    max is 25
    sum is 108

    列表解析 -- 更简洁的写法

    #列表解析 -- 更简洁的写法
    squares = [value ** 2 for value in range(1, 11)]
    print(squares)
    #注意这里的for循环末尾没有:for循环的值将赋给前面的表达式
    

    运行结果
    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

    书后的小练习

    # Section Pracyise 4.6
    #输出1-20间的所有奇数
    for odd in range(1, 21, 2):
        print(odd)
        
    print('------')
    #输出1-30能被3整除的所有数
    for threes in range(3, 31, 3):
        print(threes)
        
    print('------')
    #使用列表解析输出前10个整数的立方
    cubic = [number ** 3 for number in range(1, 11)]
    print(cubic)
    

    运行结果
    1
    3
    5
    7
    9
    11
    13
    15
    17
    19


    3
    6
    9
    12
    15
    18
    21
    24
    27
    30


    [1, 8, 27, 64, 125, 216, 343, 512, 729, 1000]

    使用列表的一部分 --> 切片, 遍历切片

    #使用列表的一部分 --> 切片, 遍历切片
    char = ['A', 'B', 'C', 'D', 'E', 'F']
    char1 = char[0 : 3] #取列表前 3 个元素
    char2 = char[3 : 5] #取第4 - 5 个元素
    char3 = char[ : 2]  #默认从列表开头
    char4 = char[2 :]   #默认至列表末尾
    char5 = char[-2 :]  #倒数第2位开始到列表最后
    char6 = char[: -2]  #开头至倒数第 2 位止
    print(char1)
    print(char2)
    print(char3)
    print(char4)
    print(char5)
    print(char6)
    
    print("---------------------> 下面是遍历切片char1")
    for charNew in char1:
        print(charNew)
    

    运行结果
    ['A', 'B', 'C']
    ['D', 'E']
    ['A', 'B']
    ['C', 'D', 'E', 'F']
    ['E', 'F']
    ['A', 'B', 'C', 'D']
    ---------------------下面是遍历切片char1
    A
    B
    C

    复制列表 以及 创建元组等

    #复制列表 以及 创建元组等
    dim = [10 , 60, 90]
    dimCopy = dim[:]    #复制这个列表,相当于创建一个独立的副本
    dimCopy.append(100) #在列表末尾加一个元素100
    print("dim is " + str(dim))
    print("dimCopy is " + str(dimCopy)) #作为对比,分别操作两个列表
    #说明复制的列表相互独立
    
    print("----------------------------> 创建元组及其使用")
    #元组就是把列表的[]变成了( )--->用于不可改变的量,相当于C里的宏定义
    cuboid = (10 , 60, 90)    #例如这是长方体的维数
    # cuboid.append(100)      #尝试改变元组,发生报错
    print(cuboid)
    
    #改的方式只有重新定义元组
    cuboidNew = (10, 60, 100) #这其实是废话
    print(cuboidNew)
    

    运行结果
    dim is [10, 60, 90]
    dimCopy is [10, 60, 90, 100]
    ----------------------------创建元组及其使用
    (10, 60, 90)
    (10, 60, 100)

    9f59442254d70dd7833a8c6e30fad139.jpg

    相关文章

      网友评论

          本文标题:6 再识Python列表

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