zoukankan      html  css  js  c++  java
  • PythonList

    1、定义方式:

      li=[元素1,元素2,.....]

        li=list()默认创建一个空列表

    2、将一个可迭代的元素转换成list

      li=list(可迭代的元素) 内部进行for循环每一个元素 当做列表的元素

      a、字符串转换成list

    str="杨瑞静"
    li=list(str)
    print(li)
    
    结果:['杨', '瑞', '静']

    b、元组转换成list
    tu=("yang","rui","jing")
    li=list(tu)
    print(li)
    
    

        c、字典转换成list

       由于字典循环默认是循环key 所以字典转换list有三种形式 key value items

        (1)默认key转换list

          

    dict={"k1":"yang","k2":"rui","k3":"jing"}
    li=list(dict)
    print(li)
    
    ['k3', 'k1', 'k2']

        (2) value转换list

        

    dict={"k1":"yang","k2":"rui","k3":"jing"}
    li=list(dict.values())
    print(li)
    
    
    ['yang', 'rui', 'jing']

           (3)items转换list

        

    dict={"k1":"yang","k2":"rui","k3":"jing"}
    li=list(dict.items())
    print(li)
    
    [('k1', 'yang'), ('k3', 'jing'), ('k2', 'rui')]
    3、list特有功能
    a、append 在列表后面追加元素
    li=["a","b"]
    li.append("c")
    print(li)
    
    
    ['a', 'b', 'c']

      b、clear 清楚list中的元素

      

    li=["a","b"]
    print(len(li))
    li.clear()
    print(len(li))
    
    2
    0

      c、extend 用另外一个可迭代的对象扩充到自己内部(str,list,dict,tuple)

        

    li=["yang","rui"]
    print(li)
    # 字符串
    s="jing"
    li.extend(s)
    print(li)
    # 集合
    li1=["123","234"]
    li.extend(li1)
    print(li)
    # 字典 默认扩充的内容的key值 因为内部循环默认是key循环
    dict={"k1":"abc","k2":"nbm"}
    li.extend(dict)
    print(li)
    # 指定以字典value扩充
    li.extend(dict.values())
    print(li)
    #指定以字典item扩充 扩充到list中的每一个元素都是元组形式
    li.extend(dict.items())
    print(li)
    # 元组
    tu=("lll","kkk")
    li.extend(tu)
    print(li)
    ['yang', 'rui']
    ['yang', 'rui', 'j', 'i', 'n', 'g']
    ['yang', 'rui', 'j', 'i', 'n', 'g', '123', '234']
    ['yang', 'rui', 'j', 'i', 'n', 'g', '123', '234', 'k2', 'k1']
    ['yang', 'rui', 'j', 'i', 'n', 'g', '123', '234', 'k2', 'k1', 'nbm', 'abc']
    ['yang', 'rui', 'j', 'i', 'n', 'g', '123', '234', 'k2', 'k1', 'nbm', 'abc', ('k2', 'nbm'), ('k1', 'abc')]
    ['yang', 'rui', 'j', 'i', 'n', 'g', '123', '234', 'k2', 'k1', 'nbm', 'abc', ('k2', 'nbm'), ('k1', 'abc'), 'lll', 'kkk']

      d、reverse 翻转自身

      

    #list自身翻转
    li=["1243","mmmm",90]
    print(li)
    li.reverse()
    print(li)

    结果

    ['1243', 'mmmm', 90]
    [90, 'mmmm', '1243']

      e、insert 向指定的位置插入元素

      

    li=["1243","mmmm"]
    print(li)
    li.insert(0,123)
    li.insert(2,"abc")
    li.insert(len(li),"end")
    print(li)

    结果

    ['1243', 'mmmm']
    [123, '1243', 'abc', 'mmmm', 'end']

    4、公共功能

      a、索引

      

    li=["","",""]
    #根据索引获取指定位置的元素
    s=li[0]
    print(s)
    #获取指定元素的索引
    i=li.index("")
    print(i)

    结果

    1

      b、切片 

        

    li=["","",""]
    s=li[0:2]
    print(s)

    结果:
      

    ['', '']

      注意:切片含头不含尾

      c、迭代

    5、多层嵌套

      

    
    
    
  • 相关阅读:
    LeetCode对撞指针汇总
    167. Two Sum II
    215. Kth Largest Element in an Array
    2018Action Recognition from Skeleton Data via Analogical Generalization over Qualitative Representations
    题解 Educational Codeforces Round 84 (Rated for Div. 2) (CF1327)
    题解 JZPKIL
    题解 八省联考2018 / 九省联考2018
    题解 六省联考2017
    题解 Codeforces Round #621 (Div. 1 + Div. 2) (CF1307)
    题解Codeforces Round #620 (Div. 2)
  • 原文地址:https://www.cnblogs.com/ruijing/p/7472885.html
Copyright © 2011-2022 走看看