zoukankan      html  css  js  c++  java
  • Python列表详解

    列表的特征

    • 列表使用中括号括起来;
    • 列表是有序的,列表的元素可以被修改;
    • 列表在内存中实际上是一个链形的存储结构,上一个内容里指向了下一个内容的内存地址;
    • 列表的中括号内的内容以逗号分隔,每两个逗号间是一个整体;
    • 内容可以是数字、字符串、列表、布尔值,所有的类都可以放进列表,列表是一个集合;
    • 列表中可以嵌套列表,列表可以无限嵌套列表;
    • 列表可以使用索引取值;

        例一:print(test[3:6])  # 取test列表里的范围X(3 <= X < 6)的值;     

        例二:print(test[3])   #取test列表里的第三个索引的值;

        例三:嵌套索引取值:找到列表中子列表的子列表的数字

           ha = [1,2,3,"hello",[1,[33,55],5],"good"]

           v = ha[4][1][0]

           print(v)

    • 列表可以支持for循环;
    • 列表可以支持while循环;
    • 列表元素可以被修改;

        例一:修改某个内容

        ha = [1,2,3,"hello",[1,3,5],"good"]

        ha[1] = 5

        print(ha)

        例二:通过切片的方式修改某几个内容

        ha = [1,2,3,"hello",[1,3,5],"good"]

        ha[1:3] = 9,["thanks","you"]

        print(ha)

        例三:删除某个内容

        ha = [1,2,3,"hello",[1,3,5],"good"]

        del ha[1]

        print(ha)

        例四:通过切换方式删除某几个内容

        ha = [1,2,3,"hello",[1,3,5],"good"]

        del ha[1:3]

        print(ha)

        

    • 列表支持in操作  

        ha = [1,2,3,"hello",[1,[33,55],5],"good"]

        for x in ha

        print(x)    

    字符串和列表的互相转换

    • 对于字符串想转换列表,可以直接转换(内部使用了for循环);

      haha = "sjdfjskldfjsdfjlsdjfksdfwperiuowep"

      haha = list(haha)

      print(haha)

    • 对于既有数字又有字符串的列表要转换成字符串,需要自己写for循环;

    ha = [1,2,3,"hello",[1,[33,55],5],"good"]

    s = ""

    for x in ha

      s = s + str(x)

    print(s)

    • 对于只有字符串的列表要转换成字符串,可以使用简单办法,通过join方法;

        ha = ["1","2","3","hello","good"]

        s = "".join(ha)

        print(s)

    List功能详解

    • 需求一:在原值后追加(参数是一个整体,将追加的参数整体增加到原值后)

    test = [11,22,33,44]

    test.append(5)

    print(test)

    • 需求二:清空列表

    test = [11,22,33,44]

    test.clear()

    print(test)

    • 需求三:拷贝--浅拷贝

    test = [11,22,33,44]

    v = test.copy()

    print(v)

    • 需求四:计算列表中某一个元素出现的次数

    test = [11,22,33,44]

    v = test.count(22)

    print(v)

    • 需求五:扩展原来的列表(参数是可迭代对象,依次循环每一个参数增加到原列表)

    test = [11,22,33,44]

    v = test.extend([6565,"加油"])

    print(v)

    • 需求六:根据值去找值的索引,从左往右找,找到以后就停止继续寻找,参数中的寻找范围定义的是一个左开右闭的区间;

    test = [11,22,33,22,44]

    v = test.index(22,3,4)

    print(v)

    • 需求七:在指定的索引位置插入元素

    test = [11,22,33,44]

    test.insert(0,99)

    print(test)

    • 需求八:删除某个值,并获取当前值(默认情况删除最后一个元素),也可根据索引删除某个值

    test = [11,22,33,44]

    v = test.pop()

    print(test)

    print(v)

    test = [11,22,33,44]

    v = test.pop(1)

    print(test)

    print(v)

    • 需求九:删除列表中的指定值,从左往右删除,遇到可以删除对象后停止删除

    test = [11,22,33,22,44]

    test.remove(22)

    print(test)

    其他的删除方法还有:pop  remove  del  

    • 需求十:将当前列表进行反转

    test = [11,22,33,22,44]

    test.reverse()

    print(test)

    • 需求十一:排序,默认从小到大,有reverse的时候是从大到小

    test = [66,88,11,22,33,22,]

    test.sort()

    print(test)

    test = [66,88,11,22,33,22,]

    test.sort(reverse=True)

    print(test)

  • 相关阅读:
    过往总结
    查找光标处的标识符
    【转】Linux 内核开发 Eclipse内核开发环境搭建
    【转】Writing linux kernel code in Eclipse
    【转】 Linux内核升级指南
    [转]Ubuntu 11.04 安装后要做的20件事情
    【转】vim 替换操作大全
    【转】移动硬盘安装ubuntu
    重置 Winsock 目录
    【转】让Firefox像vim一样操作
  • 原文地址:https://www.cnblogs.com/wangzengyi/p/12082245.html
Copyright © 2011-2022 走看看