列表的增删改查,嵌套等,及元组的查

一丶列表

  1.什么是列表

    列表是一个可变的数据类型

    列表由[]表示每一项元素,使用逗号隔开,列表什么都能装,能装对象的对象.

    列表可以装大量的数据

lst = ["赵四","ABC",123,["哈哈","吼吼"],("","","","")]

   2.列表的索引和切片

    列表和字符串一样,也有索引和切片,只不过切出来的内容是列表

lst = ["赵四","尼古拉斯","马云","王健林"]

print(lst[1])
print(lst[2])
print(lst[3])

 

    索引的下标从零开始

lst = ["赵四","尼古拉斯","马云","王健林"]
print(lst[0:2])    #['赵四', '尼古拉斯']
print(lst[:3])     #['赵四', '尼古拉斯', '马云']

 

    [起始位置:结束位置:步长]

二丶列表的增删改查

  1.增

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

#
lst = ["赵四","尼古拉斯","马云","王健林"]
lst.append("刘能") #['赵四', '尼古拉斯', '马云', '王健林', '刘能']
print(lst)
lst.insert(2,"谢文东") #['赵四', '尼古拉斯', '谢文东', '马云', '王健林', '刘能']
print(lst)
lst.extend(["奥特曼",123,"花园宝宝"])#['赵四', '尼古拉斯', '谢文东', '马云', '王健林', '刘能', '奥特曼', 123, '花园宝宝']
print(lst)
View Code

  2.删

#
lst = ["赵四","尼古拉斯","马云","王健林"]
data = lst.pop(3)  #返回被删除的数据
print(data)         #王健林
print(lst)          #['赵四', '尼古拉斯', '马云']
lst.remove("马云")   #删除元素,不存在会报错
print(lst)          #['赵四', '尼古拉斯']
del lst[1:3]   #切片删除
print(lst)      #['赵四']
lst.clear()  #清除所有
print(lst)      #[]
View Code

  3.改

#

lst = ["王者荣耀","穿越火线","绝地求生","DNF","怪物猎人世界"]
lst[0] = "扫雷"
print(lst)      #['扫雷', '穿越火线', '绝地求生', 'DNF', '怪物猎人世界']
lst[3] = "吃鸡"
print(lst)      #['扫雷', '穿越火线', '绝地求生', '吃鸡', '怪物猎人世界']
lst[1:3] = ["跑跑卡丁车"]  #先删除,后添加
print(lst)      #['扫雷', '跑跑卡丁车', '吃鸡', '怪物猎人世界']
lst[1::2] = ["QQ斗地主","QQ飞车"]  #切片修改的时候,如果步长不是1,注意元素个数
print(lst)      #['扫雷', 'QQ斗地主', '吃鸡', 'QQ飞车']
View Code

  4.查

    列表是一个可迭代对象

lst = ["王者荣耀","穿越火线","绝地求生","DNF","怪物猎人世界"]
for el in lst:
    print(el)

  5.其它操作

    sort()排序 默认升序

    sort(reverse=True) 降序

    reverse()  翻转

    len()  求长度

lst = ["","","","一个","","","城市"]
# c = lst.count("海")  #查询"海"出现的次数
# print(c)

lst = [77,3,52,6,11,7,88]
print(lst)
lst.reverse()  #倒序  [88, 7, 11, 6, 52, 3, 77]
print(lst)
lst.sort()   #升序排列,默认为升序
print(lst)  #[3, 6, 7, 11, 52, 77, 88]
lst.sort(reverse=True)   #降序排列
print(lst)      #[88, 77, 52, 11, 7, 6, 3]
View Code

 

 

三丶列表的嵌套

  采用降维操作,一层一层的看

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()
print(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)
View Code

 

 

四丶元组

  元组

    只读列表,只能看啥也不能干

    使用()表示元组

    如果元组中只有一个元素  (元素,)

    空元组 tuple()

    元组是一个可迭代对象,可以使用for 循环

tu = (1,"李白","杜甫","白居易","王维")
print(tu)

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

# for循环遍历元组
for el in tu:
    print(el)

 

五丶range

  range(n) 从0到n-1

  range(m,n)  从m 到n-1

  range(m,n,q)  从m到n-1 每q个取一个

 

  使用range和for循环来获取列表中的索引

    for i in range(len(列表)):

      i 索引

      列表[i]元素

 

posted @ 2018-07-31 16:14  七寸丶  阅读(386)  评论(0编辑  收藏  举报