• 【python学习】-列表运算(列表元素均加减乘除某个数、两个列表间的运算、遍历列表等)


    结合for循环、if条件语句对列表进行运算

    对列表每个元素均加/减/乘/除一个数

    list1=[1,2,3,4]
    print("原列表\n",list1)
    add_list1=[x+5 for x in list1]
    print("列表每个元素均加5\n",add_list1)
    sub_list1=[x-5 for x in list1]
    print("列表每个元素均减5\n",sub_list1)
    multi_list1=[x*5 for x in list1]
    print("列表每个元素均乘5\n",multi_list1)
    divi_list1=[x/5 for x in list1]
    print("列表每个元素均除5\n",divi_list1)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    原列表
     [1, 2, 3, 4]
    列表每个元素均加5
     [6, 7, 8, 9]
    列表每个元素均减5
     [-4, -3, -2, -1]
    列表每个元素均乘5
     [5, 10, 15, 20]
    列表每个元素均除5
     [0.2, 0.4, 0.6, 0.8]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    对列表元素同时进行两种运算后生成嵌套列表

    list1=[1,2,3,4]
    print("原列表\n",list1)
    sec_list1=[[x, x**2] for x in list1]#对列表元素进行两种运算
    print("嵌套列表\n",sec_list1)
    
    • 1
    • 2
    • 3
    • 4
    原列表
     [1, 2, 3, 4]
    嵌套列表
     [[1, 1], [2, 4], [3, 9], [4, 16]]
    
    • 1
    • 2
    • 3
    • 4

    #以上例子也相当于

    sec_list1=[]
    for i in list1:
        list2=[]
        list2.append(i)
        list2.append(i**2)
        sec_list1.append(list2)
    print("嵌套列表\n",sec_list1)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    嵌套列表
     [[1, 1], [2, 4], [3, 9], [4, 16]]
    
    • 1
    • 2

    对符合条件的列表元素进行运算

    list1=[1,2,3,4]
    print("原列表\n",list1)
    con_list1=[3*x for x in list1 if x > 2]#对列表元素中大于2的元素乘以3,形成新的列表
    print("对符合条件的列表元素进行运算形成的新列表\n",con_list1)
    
    • 1
    • 2
    • 3
    • 4
    原列表
     [1, 2, 3, 4]
    对符合条件的列表元素进行运算形成的新列表
     [9, 12]
    
    • 1
    • 2
    • 3
    • 4

    两个列表间的加减乘除运算

    #实现每个列表元素逐一与另一个列表元素逐一进行运算,因此产生的新列表总元素数量是len(list1)*len(list2)

    list1=[1,2,3,4]
    list2=[5,5,5,5]
    add_list=[x+y for x in list1 for y in list2]
    sub_list=[x-y for x in list1 for y in list2]
    multi_list=[x*y for x in list1 for y in list2]
    divi_list=[x/y for x in list1 for y in list2]
    print("两个列表元素互相逐一相加后形成的新列表\n",add_list)
    print("两个列表元素互相逐一相减后形成的新列表\n",sub_list)
    print("两个列表元素互相逐一相乘后形成的新列表\n",multi_list)
    print("两个列表元素互相逐一相除后形成的新列表\n",divi_list)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    两个列表元素互相逐一相加后形成的新列表
     [6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9]
    两个列表元素互相逐一相减后形成的新列表
     [-4, -4, -4, -4, -3, -3, -3, -3, -2, -2, -2, -2, -1, -1, -1, -1]
    两个列表元素互相逐一相乘后形成的新列表
     [5, 5, 5, 5, 10, 10, 10, 10, 15, 15, 15, 15, 20, 20, 20, 20]
    两个列表元素互相逐一相除后形成的新列表
     [0.2, 0.2, 0.2, 0.2, 0.4, 0.4, 0.4, 0.4, 0.6, 0.6, 0.6, 0.6, 0.8, 0.8, 0.8, 0.8]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    #实现两个列表元素互相运算(按索引)

    list1=[1,2,3,4]
    list2=[5,5,5,5]
    op_list=[list1[i]*list2[i] for i in range(len(list1))]
    print("两个列表元素按索引互相运算后的列表\n",op_list)
    
    • 1
    • 2
    • 3
    • 4
    两个列表元素按索引互相运算后的列表
     [5, 10, 15, 20]
    
    • 1
    • 2

    遍历列表

    一般可以使用for循环遍历列表元素

    #逐一遍历列表元素

    list1=[1,2,3,4]
    for i in list1:
        print(i)
    
    • 1
    • 2
    • 3
    1
    2
    3
    4
    
    • 1
    • 2
    • 3
    • 4

    #遍历列表元素并输出对应元素索引

    list1=[5,6,7,8]
    for i, v in enumerate(list1):
        print("列表元素索引",i,"对应元素",v)
    
    • 1
    • 2
    • 3
    列表元素索引 0 对应元素 5
    列表元素索引 1 对应元素 6
    列表元素索引 2 对应元素 7
    列表元素索引 3 对应元素 8
    
    • 1
    • 2
    • 3
    • 4
  • 相关阅读:
    【概率与统计】聊聊一些常见的概率分布
    MySQL数据生成工具mysql_random_data_load
    企业级C++项目那些事(1):VS&Qt相关设置
    抽象类和抽象方法
    Vuex详解(五种状态)
    Unity减少发布打包文件的体积(二)——设置WebGL发布时每张图片的压缩方式
    Python基础——递归及其经典例题(阶乘、斐波那契数列、汉诺塔)
    研发团队数字化转型实践
    [Pandas] Pandas数据结构
    Python编程基础:实验6——函数的递归
  • 原文地址:https://blog.csdn.net/qq_40481843/article/details/126415083