zoukankan      html  css  js  c++  java
  • Python基础教程:列表操作

    1:列表的去重操作

    al = [1, 1, 2, 3, 1, 2, 4]
    #set方法元素去重
    al_set = set(al)
    print(list(al_set))      #集合不支持索引操作,可以先将之转换为列表
    #formkeys方法
    al2 = {}.fromkeys(al).keys()
    print(list(al2))         #同集合,也是先将之转换成列表
    #列表推导式
    al3 = []
    for a in al:
        if a not in al3:
            al3.append(a)
    print(al3)
    
     输出结果均为:[1, 2, 3, 4]
    

    2:把字符串中,除间隔符以外的所有字符转换为一个列表

    加入有个字符串s = "1, 2, 3",怎么将他转换成列表['1','2','3']?<br>这里我们不能直接用list函数,那样会把中间的','间隔符也加入到列表里,这里可以用上篇文章提到过的split函数,只需要把分隔符指定为','就可以了,如下,就可以输出我们想要的结果了<br><br>s = "1, 2, 3"
    print(s.split(','))
    

    3:找出两个数组中相同和不同元素

    #Python学习交流群:531509025
    A = [1, 2, 3, 4, 5]
    B = [1, 3, 5, 7, 9, 10]
    #找出两list中的相同元素
    a = [x for x in A if x in B]
    print(a)
    #找出两list中的不同元素
    b = [y for y in (A+B) if y not in a]
    print(b)
    #在A中不在B中的元素
    c = [m for m in A if m not in B]
    print(c)
    #在B中不在A中的元素
    d = [n for n in B if n not in A]
    print(d)
    

    依次输出的结果为:

    [1, 3, 5]
    [2, 4, 7, 9, 10]
    [2, 4]
    [7, 9, 10]
    

    4:一行输出列表

    #一行输出列表
    l = ['a', 'b', 'c', 'd', 'e']  #元素是字符类型
    print(''.join(l))
    m = [1, 2, 3, 4, 5, 6, 7, 8, 9]  #元素不是字符类型
    print(''.join(map(str, m)))     #map函数,根据提供的函数对制定的序列做映射
    n = [[1, 2], [3, [4,5,6]], [5, 6]]#元素是列表类型
    print([y for x in n for y in x])
    

    输出结果依次为:

    abcde
    123456789
    [1, 2, 3, [4, 5, 6], 5, 6]
    

    5:列表合并

    列表可以像字符串那样直接用‘+’连接,也可以用extend方法将一个列表中的元素全部添加到另一个列表中,只不过前者是生成一个新的列表,后者是更新一个列表

    #合并列表
    a = [1, 5, 7, 9]
    b = [2, 2, 6, 8]
    print(a+b)
    a.extend(b)
    print(a)
    
     输出结果均为:[1, 5, 7, 9, 2, 2, 6, 8]
    

    6:打乱列表元素

    我么可以用random中的shuffle方法对一个列表里面的元素进行打乱,操作如下

    #打乱列表元素
    from random import shuffle
    a = ['a', 1, 'b',5, 6, 9, 78]
    shuffle(a)
    print(a)
    

    每次运行输出的顺序不同。

  • 相关阅读:
    Win8系统 Python安装
    一些安卓开源框架整理
    Android 媒体键监听以及模拟媒体键盘的实现 demo
    android View 自动 GONE 问题
    Android 定时器TimerTask 简单使用
    关于Android studio 相对 eclipse 优点
    Java序列化与反序列化
    android shape的使用 边框
    Android Studio 修改 包名 package name
    Android WebView Long Press长按保存图片到手机
  • 原文地址:https://www.cnblogs.com/xxpythonxx/p/14593789.html
Copyright © 2011-2022 走看看