• python课堂整理4---列表的魔法


    一、list   类, 列表

    li = [1, 12, 9, "age", ["大白", "小黑"], "alex"]
    

    1. 中括号括起来

    2. 逗号分割每个元素

    3. 列表中的元素可以是数字、字符串、列表、布尔值等

    4. 索引取值

    5. 切片取值---->得到的还是列表

    6. for循环

    7. while 循环

    8. 支持 in 操作

    列表在内存中是以链表形式存储,可以被修改

    二、列表灰魔法

    1.修改

    li = [1, 12, 9, "alex", ["大白", "小黑"]]
    li[1] = 120
    print(li)

    li = [1, 12, 9, "alex", ["大白", "小黑"]]
    li[1: 3] = [120, 90]
    print(li)
    

     

    2.删除

    li = [1, 12, 9, "alex", ["大白", "小黑"]]
    del li[1]
    print(li)
    

    li = [1, 12, 9, "alex", ["大白", "小黑"]]
    del li[0:3 ]
    print(li)
    

    3.操作

    li = [1, 12, 9, "alex", ["大白", [7, 19]]]
    v = li[4][1][0]
    print(v
    

    字符串转为列表

    s = "dabai"
    new_li = list(s)
    print(new_li)
    

    for i in 123:
        print(i)
        
    

    数字(int)不能进行for循环,不能用list 变为列表,因为字符串转换为列表,内部是进行了 for 循环。

    列表转换为字符串

    1.既有数字又有字符串时,自己写for循环

    li = [11,22,33,"123", "alex"]
    s = ""
    for i in li:
        s = s + str(i)
    print(s)
    

    2. 如果列表里只有字符串时,用字符串的join方法

    li = ["123", "alex"]
    v = "".join(li)
    print(v)
    

    三、列表的常用魔法

    1.输入参数,在原来值最后追加,  None在python里表示空,什么都没有。因为 list 可以直接修改,所以不需要用 v 重新接受,直接用 li.appebd(5)  即可

    li = [11, 22, 33, 44]
    v = li.append(5)
    print(li)
    print(v)

    li 对象调用了append 方法

    li = [11, 22, 33, 44]
    li.append([1234,2323])
    print(li)
    

    2.清空列表

    li = [11, 22, 33, 44]
    li.clear()
    print(li)
    

    3.拷贝,  浅拷贝

    li = [11, 22, 33, 44]
    v = li.copy()
    print(v)
    

    4. 计算元素出现的次数

    li = [11, 22, 33, 22, 44]
    v = li.count(22)
    print(v)
    

    5.扩展原列表,参数为可迭代对象(iterable为可迭代对象)

    li = [11, 22, 33, 22, 44]
    li.extend(["大白", "521"])
    print(li)
    

    extend 相当于内部有个for 循环,然后再 li.append()

    li = [11, 22, 33, 22, 44]
    li.extend("大白")
    print(li)
    

    6.根据值获取当前值索引位置,左边优先,可以指定起始位置

    li = [11, 22, 33, 22, 44]
    v= li.index(22)
    print(v)
    

    7. 在指定索引位置插入

    li = [11, 22, 33, 22, 44]
    li.insert(0, 99)
    print(li)
    

    8.默认删除列表最后一个,并获取被删除的值

    li = [11, 22, 33, 22, 44]
    v = li.pop()
    print(li)
    print(v)
    

    指定索引删除

    li = [11, 22, 33, 22, 44]
    v = li.pop(1)
    print(li)
    print(v)
    

    9. 删除列表中的指定值,左边优先

    li = [11, 22, 33, 22, 44]
    li.remove(22)
    print(li)
    

    10. 将当前列表进行翻转

    li = [11, 22, 33, 22, 44]
    li.reverse()
    print(li)
    

    11.列表的排序,默认是从小到大排

    li = [11, 22, 33, 22, 44]
    li.sort()
    print(li)
    

    也可以从大到小排

    li = [11, 22, 33, 22, 44]
    li.sort(reverse = True)
    print(li)
    

    也可以根据函数方面排序,目前未学。

    一个奋斗中的产品小白
  • 相关阅读:
    BAPI / RFC with Delphi(系列之一)--安装部件
    如何动态改变Table Control的列抬头
    如何实现标准TCODE的屏幕增强(HOWTO:Implement a screen exit to a standard SAP transaction)
    JNDI 连接Windows Active Directory 教程
    BAPI / RFC with Delphi(系列之三)--TSAPLogonControl使用(无对话框的登录sap的delphi源代码)
    BAPI / RFC with Delphi(系列之二)--TSAPLogonControl使用(有对话框的登录sap的delphi源代码)
    asp.net
    关于ETL的经验总结[经典](转)
    保持Oracle的优良性能
    保持Oracle的优良性能
  • 原文地址:https://www.cnblogs.com/dabai123/p/10960419.html
Copyright © 2020-2023  润新知