• 学习python的第六天---1(理论)


    本节主要内容:

    1. 列列表

    2. 列列表的增删改查

    3. 列列表的嵌套

    4. 元组和元组嵌套

    5. range

    ⼀列表   

    1.1   列列表的介绍       

    列表是python的基础数据类型之⼀ ,其他编程语⾔言也有类似的数据类型. 比如JS中的数 组, java中的数组等等. 它是以[ ]括起来, 每个元素⽤用' , '隔开⽽而且可以存放各种数据类型:  

     列列表相比于字符串串. 不仅可以存放不同的数据类型. ⽽而且可以存放⼤大量量的数据. 32位 python可以存放:  536870912个元素, 64位可以存放:  1152921504606846975个元素.⽽而且列列 表是有序的(按照你保存的顺序),有索引, 可以切⽚片⽅方便便取值.
      2.2  列列表的索引和切片

     列列表和字符串串⼀一样也拥有索引:

    lst = ["麻花藤", "王剑林林", "⻢马芸", "周鸿医", "向华强"]

    print(lst[0])   # 获取第⼀一个元素

    print(lst[1])

    print(lst[2])

    lst[3] = "流动强"  # 注意. 列列表是可以发⽣生改变的. 这⾥里里和字符串串不不⼀一样

    print(lst)  # ['麻花藤', '王剑林林', '⻢马芸', '流动强', '向华强']

    s0 = "向华强"

    s0[1] = "美"  # TypeError: 'str' object does not support item assignment 不不 允许改变 print(s0)

     列列表的切片:

    lst = ["麻花藤", "王剑林林", "⻢马芸", "周鸿医", "向华强"]

    print(lst[0:3])     # ['麻花藤', '王剑林', '马芸']

    print(lst[:3])      # ['麻花藤', '王剑林', '马芸']

    print(lst[1::2])    # ['王剑林', '周鸿医'] 也有步⻓

    print(lst[2::-1])   # ['马芸', '王剑林林', '麻花藤'] 也可以倒着取

    print(lst[-1:-3:-2])    # 倒着带步⻓

    二. 列表的增删改查

    1. 增, 注意, list和str是不⼀一样的. lst可以发⽣生改变. 所以直接就在原来的对象上进⾏了操 作

    lst = ["麻花藤", "林林俊杰", "周润发", "周芷若"]

    print(lst)

    lst.append("wusir")

    print(lst)

    lst = []

    while True:   

    content = input("请输⼊入你要录⼊入的员⼯工信息, 输⼊入Q退出:")   

    if content.upper() == 'Q':       

    break   

    lst.append(content)

    print(lst)

    lst = ["麻花藤", "张德忠", "孔德福"]

    lst.insert(1, "刘德华")    # 在1的位置插⼊入刘德华. 原来的元素向后移动⼀一位

    print(lst) #

    迭代添加 lst = ["王志⽂文", "张⼀一⼭山", "苦海海⽆无涯"]

    lst.extend(["麻花藤", "麻花不不疼"])

    print(lst)

    2. 删除( pop, remove, clear, del)

    lst = ["麻花藤", "王剑林林", "李李嘉诚", "王富贵"]

    print(lst)

    deleted = lst.pop()         # 删除最后⼀一个

    print("被删除的", deleted)

    print(lst)

    el = lst.pop(2)     # 删除2号元素

    print(el) p

    rint(lst) l

    st.remove("麻花藤")   # 删除指定元素

    print(lst)

    # lst.remove("哈哈")   

    # 删除不不存在的元素会报错 #

    # print(lst) lst.clear()    

    # 清空list print(lst)

    # 切⽚片删除

    del lst[1:3] print(lst)

    三索引切片修改

    # 修改

    lst = ["太⽩白", "太⿊黑", "五⾊色", "银王", "⽇日天"]

    lst[1] = "太污"   # 把1号元素修改成太污

    print(lst) l

    st[1:4:3] = ["麻花藤", "哇靠"]     # 切⽚片修改也OK. 如果步⻓长不不是1, 要注意. 元素的个 数

    print(lst) l

    st[1:4] = ["李李嘉诚个⻳龟⼉儿⼦子"]  # 如果切⽚片没有步⻓长或者步⻓长是1. 则不不⽤用关⼼心个数 print(lst)

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

    for el in lst:   

    print(el)

    5. 其他操作

    lst = ["太⽩白", "太⿊黑", "五⾊色", "银王", "⽇日天", "太⽩白"]

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

    print(c)

    lst = [1, 11, 22, 2] lst.sort()          # 排序. 默认升序

    print(lst) lst.sort(reverse=True)  # 降序

    print(lst)

    lst = ["太⽩白", "太⿊黑", "五⾊色", "银王", "⽇日天", "太⽩白"]

    print(lst)

    lst.reverse()

    print(lst) l = len(lst)    # 列列表的⻓长度 print(l)

    三. 列列表的嵌套    采⽤用降维操作.⼀一层⼀一层的看就好.

    lst = [1, "太⽩白", "wusir", ["⻢马⻁虎疼", ["可⼝口可乐"], "王剑林林"]]

    # 找到wusir

    print(lst[2])

    # 找到太⽩白和wusir

    print(lst[1:3])

    # 找到太⽩白的⽩白字

    print(lst[1][1])

    # 将wusir拿到. 然后⾸首字⺟母⼤大写. 再扔回去

    s = lst[2]

    s = s.capitalize()

    lst[2] = s print(lst)

    # 简写 lst[2] = lst[2].capitalize() p

    rint(lst)

    # 把太⽩白换成太⿊黑

    lst[1] = lst[1].replace("⽩白", "⿊黑")

    print(lst)

    # 把⻢马⻁虎疼换成⻢马化疼

    lst[3][0] = lst[3][0].replace("⻁虎", "化")

    print(lst[3][0])

    lst[3][1].append("雪碧")

    print(lst)

    四. 元组和元组嵌套    元组: 俗称不可变的列列表.⼜又被成为只读列列表, 元组也是python的基本数据类型之⼀一, ⽤用⼩小括 号括起来, ⾥里里⾯面可以放任何数据类型的数据,  查询可以. 循环也可以. 切片也可以. 但就是不能 改.

    tu = (1, "太⽩白", "李李⽩白", "太⿊黑", "怎么⿊黑")

    print(tu)

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

    # for循环遍历元组

    for el in tu:   

    print(el) # 尝试修改元组

    # tu[1] = "⻢马⻁虎疼"   # 报错 'tuple' object does not support item assignment

    tu = (1, "哈哈", [], "呵呵") #

    tu[2] = ["fdsaf"]   # 这么改不不⾏行行

    tu[2].append("麻花藤")     # 可以改了了. 没报错

    tu[2].append("王剑林林")

    print(tu)

    关于不可变, 注意: 这⾥里里元组的不可变的意思是⼦子元素不可变. ⽽而⼦子元素内部的⼦子元素是可 以变, 这取决于⼦子元素是否是可变对象.    

    元组中如果只有⼀一个元素. ⼀一定要添加⼀一个逗号, 否则就不是元组

    tu = (1,)

    print(type(tu))

    五. range   

    range可以帮我们获取到⼀一组数据. 通过for循环能够获取到这些数据.

    for num in range(10):   

    print(num)

    for num in range(1, 10, 2):   

    print(num)

    for num in range(10, 1, -2):    # 反着来, 和切⽚片⼀一样   

    print(num)

  • 相关阅读:
    Mvc+三层(批量添加、删除、修改)
    js中判断复选款是否选中
    EF的优缺点
    Git tricks: Unstaging files
    Using Git Submodules
    English Learning
    wix xslt for adding node
    The breakpoint will not currently be hit. No symbols have been loaded for this document."
    Use XSLT in wix
    mfc110ud.dll not found
  • 原文地址:https://www.cnblogs.com/DanielYang11/p/9836601.html
Copyright © 2020-2023  润新知