zoukankan      html  css  js  c++  java
  • day004 list、tuple、range

    一、列表(list)

    1、介绍

    * 能装对象的对象(类似于书包),有顺序(按照我们添加的顺序)
    * 用[] 表示,可以放任意数据,每个元素用逗号( ,)隔开
    * 同样用索引和切片

    索引

        lst[0]  # 获取第一个元素
        可以修改,lst[3] = "一个人"

    切片

        lst[0: 3] # 切片0到2,步长默认为1
        lst[2: : -1] # 倒着切片,用步长为-1控制

    2、列表的增删改查

    1、增加, 因为list可变所以直接在原来对象上操作

    lst = [11, 22, 33,]
    lst.append("wusir")  # 将"wusir"添加到list的末尾
    lst.insert[1, "刘德华")  # 指定位置插入元素,原来的元素向后移一位
    lst.extend(可迭代对象)  #  迭代添加,在原list末尾迭代添加

    2、删除

    lst.pop()  # 默认删除最后一个
    lst.pop(2)  # 指定删除2号元素
    lst.remove('捅破天')   # 删除指定元素, 如果是不存在的元素会报错
    lst.clear()     # 清空list
    del lst[1: 3]    # 切片删除

    3、修改

    lst[1] = "太污"   # 把1号元素修改成太污
    lst[1: 4: 3] = ["马虎疼", "欧哈依"]   # 切片修改也行,如果步长不是1,要注意,元素个数
    lst[1: 4] = ["一天天"]     # 切片如果没有步长或步长为1,则不用关心个数

    4、查询, 列表是一个可以迭代对象,所以可以进行for循环

    for e2 in lst:
        print(e2)   # 输出每一个元素

    5、其他操作

    1、查询出现次数 count

    c = lst.count("太白")     # 查询太白出现的次数

    2、排序 sort

    lst.sort()  # 排序,默认升序
    lst.sort(reverse = True)    # 降序

    3、翻转元素顺序(倒序) reverse

    lst.reverse()   # 将[1, 3, 2, 4] -->  [4, 2, 3, 1]

    4、列表长度

            len(lst)    # 计算列表的长度

    5、查找索引 index

    lst.index(元素)       # 通过元素查找索引

    3、列表的嵌套

    采用降维操作,一层一层的看就好
    lst = [1, "太白", "wusir", ["马虎疼", ["可口可乐"], "王林"]]
    print(lst[2])       # 找到"wusir"
    print(lst[1: 3]      # 找到太白和wusir
    print(lst[1][1])       # 打印太白的白字
    # 将 wusir拿到,然后首字母大写,再输入列表

    二、元组和元组嵌套 tuple

    tuple: 只读列表
    由 () 组成     特点: 不可变,
    如果只有一个元素,末尾要加 , 不然不是tuple
    不可变:指的是元组内部第一层元素的内存地址不可变

    索引

    print(tu[2])

    切片

    print(tu[2: 5]) # 切片后还是元组

    for 循环遍历元组

    for el in tu:
        print(el)

    尝试修改元组

    tu = ("水牛", "哈哈哈", [], "呵呵")
    ***错误的修改*** 
    tu[1] = '马蜂'  
    #报错  TypeError: 'tuple' object does not support item assignment
    tu[2].append("麻将台")     # 不可变是指,子元素不可变,
    子元素内部的子元素是可以变得,这个取决于元素是否为可变对象

    三、 range

    for num in range(10):
        print(num)
    for num in range(1, 10, 2):
        print(num)
    for num in range(10, 1, -2):    # 反着来, 和切片一样 10, 9,
        print(num)
  • 相关阅读:
    破解登录手机验证码思路
    自媒体平台越来越多,取舍之后我只推荐这7家平台
    微信小程序:JS 交互逻辑
    微信小程序:WXSS 样式
    微信小程序:WXML 模板
    微信小程序:页面配置 page.json
    SQLServer创建维护计划失败 错误c001f011
    远程连接提示要求的函数不受支持如何解决
    安装 SQLManagementStudio_x86_CHS(SQL Server Management Studio) 老提示重启的解决办法
    数据库属性
  • 原文地址:https://www.cnblogs.com/yipianshuying/p/9997495.html
Copyright © 2011-2022 走看看