zoukankan      html  css  js  c++  java
  • 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)
    

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

    一个奋斗中的产品小白
  • 相关阅读:
    服务器状态码
    QuerySet中添加Extra进行SQL查询
    django配置一个网站建设
    MySQL数据库查询中的特殊命令
    125. Valid Palindrome
    121. Best Time to Buy and Sell Stock
    117. Populating Next Right Pointers in Each Node II
    98. Validate Binary Search Tree
    91. Decode Ways
    90. Subsets II
  • 原文地址:https://www.cnblogs.com/dabai123/p/10960419.html
Copyright © 2011-2022 走看看