• 数据类型-列表


    一、列表

    1.1 作用:多个装备,多个爱好,多门课程,多个女朋友等

    1.2 定义:[]内可以有多个任意类型的值,逗号分隔

    my_friend = (['sean',18,'75kg','176cm'],['Jake',21,'50kg','165cm'])
    print(my_friend)
    msg = list('anc')
    print(msg) # a n c
    print(type(my_friend)) # tuple
    print(type(msg)) # list

    1.3 按索引存取值(正向存取+反向存取):即可存也可以取 

    eg:取
    l = [11, 22, 33]
    print(l[0]) #11
    print(l[-1]) #33
    eg:存
    l[0] = 55 # 用55替换11后显示
    print(l) # 展示结果:[55,22,33]

    1.4切片(顾头不顾尾,步长)

    l=[11,22,33,44,55]
    res=l[0:5:2] # 开始位置,结束为止(不取),步长值
    print(res)
    print(l)

    l0 = [11, 22, 33]
    print(l0[::-1]) # 省略开始位置与结束为止(不取),步长值去负数,从右侧开始取值
    print(l0[:]) #取l0所有值

    l1=[11,22,33,44,55]
    l1[0]=444 #存值,将第0个数值替换为444
    print(l1[1]) #显示第1个数值

    src_l = [11, 22, [33, 44]]
    dst_l=src_l[:]
    dst_l=src_l.copy() #复制scr_l
    print(dst_l)
    print(id(src_l[0]),id(src_l[1]),id(src_l[2])) # scr_l与dst_l中各个元素的ID一样
    print(id(dst_l[0]),id(dst_l[1]),id(dst_l[2]))
    dst_l[2][0] = 555 #将dst_l中子列表[33,44]中的33替换为555
    print(dst_l)

    1.5 长度len

    l= [11,22,33]
    print(len(l)) #返回结果为3
    l = [12]
    print(len(l)) #返回结果为3

    1.6 成员运算in和not in

    src_l = [11, 22, [33, 44]]
    print([33, 44] in src_l) #True
    print([44, 33] in src_l) #False,子列表内元素顺序发生变化,故为false
    print([44, 33] not in src_l) #True

    1.7追加

    1)append:用法:name.append('**'):只是单纯地往列表末尾添加值,该功能本身没有返回值,同时更换不存在的索引值会报错

        src_l = [11, 22, 33]

    src_l[2] = 111111  # 报错
    src_l.append(44) #append只是单纯地往列表末尾添加值,该功能本身没有返回值,同时更换不存在的索引值会报错
    src_l.append(55)
    res = src_l.append(88)
    print(src_l)
    print(res) #返回none,不会返回添加的值或字符

    2)insert只是单纯地往列表指定位置添加值,该功能本身没有返回值

    src_l = [1,2,3]
    src_l.insert(0,'aaa') #insert只是单纯地往列表指定位置添加值,该功能本身没有返回值
    print(src_l) #['aaa', 1, 2, 3]

    3)extend:
    可以一次添加多个值,不能返回添加的值
    names=['egon','jack','tom']
    names.extend(['sean','japer'])
    scr_l= names.extend(['fanny'])
    print(scr_l)
    print(names)

    1.8删除

    names=['sean','jack','tom']
    方式1:万能删除,没有返回值===》单纯的删
    del names[1] 不显示删除的字符
    print(names)

    方式2:remove指定元素删除,没有返回值===》单纯的删
    res = names.remove('tom')
    print(res) #None 不显示删除的字符
    print(names)

    方式3:pop指定索引删除,有返回===》取走 注意:pop删除默认从右往左删除,即倒叙删除,故如需从首个字符删除,需注明索引,即POP(0)。
    res=names.pop(1)
    print(res) #取走Jack
    print(names) #显示剩余 sean与tom

    1.9循环

    names=['sean','japer','tom']
    for name in names:
    print(name)

    1.10

     1)count计数;index返回索引位置

    names = [11, 22, 'egon', "egon", 'jack','egon', 'tom']
    print(names.count("egon")) #统计Egon有几个
    res = names.index('egon') # index没有会报错,不推荐使用index,有则返回索引位置
    print(res) #返回索引位置2
    print(names.clear()) #清空列表内所有元素

    2)reverse按照按照原有元素的逆序排列展示
    names=[1,2,'sean']
    names.reverse() #按照原有元素的逆序排列展示
    print(names)

     练习:

    t = []
    t.append('first')
    t.append('second')
    t.append('third')
    print(t)
    #队列:先进先出FOFI
    print(t.pop(0))
    print(t.pop(0))
    print(t.pop(0))
    #堆栈:后进先出
    print(t.pop())
    print(t.pop())
    print(t.pop())
    
    
  • 相关阅读:
    Yii2 框架目录
    实现超链接在本页面的跳转
    操作系统
    shell笔记
    软RAID5制作流程
    nginx学习之简化安装篇(一)
    Javascript中实现继承的方式
    JavaScript中的函数和C#中的匿名函数(委托、lambda表达式)
    JavaScript中变量、执行环境、作用域与C#中的异同
    Javascript与C#对变量的处理方式
  • 原文地址:https://www.cnblogs.com/datatool/p/13355230.html
Copyright © 2020-2023  润新知