3、列表类型

列表类型 list

用途:用于存一个或者多个不同类型的值

定义方式:通过中括号[],存值,值之间用逗号分隔

常用方法:

  1. 索引取值,正向取和反向取,可以取也可以存
l1 = [1, 2, 3, "shen"]
print(l1[2])
print(l1[-1])
l1[3] = 8# >>>将l1索引3位置的值换成8
  1. 索引切片

跟字符串索引切片相同,顾头不顾尾,默认步长为1

  1. .append():在列表最后追加一个值,传入什么类型加入什么类型,一次性只能加一个值
l1 = [1, 2, 3, "shen"]
l1.append(100)
print(l1)# >>>[1, 2, 3, 'shen', 100]
l1.append("age")
print(l1)# >>>[1, 2, 3, 'shen', 100, 'age']
l1.append([1,2])
print(l1)# >>>[1, 2, 3, 'shen', 100, 'age', [1, 2]]
  1. .insert():在任意位置插入一个值
l1 = [1, 2, 3, "shen"]
l1.insert(3,"name")# 将"name"插入索引的位置
print(l1)# >>>[1, 2, 3, 'name', 'shen']
  1. .extend():将传入的可迭代对象打散后追加到列表后面
l1 = [1, 2, 3, "shen"]
l1.extend([1,2,3])
print(l1)
l1.extend({"name":"shen","age":18})
print(l1)
  1. .remove():删除指定值,仅删除从左往右第一个,没有返回值(彻底删除)
l1 = [1, 2, 3, "shen",1]
l1.remove("shen")
print(l1)# >>>[1, 2, 3, 1]
l1.remove(1)
print(l1)# >>>[2, 3, 1]
  1. .pop():按照索引删除,如果不指定索引默认删除最后一个,有返回值(最常用的删除)
l1 = [1, 2, 3, "shen", 1]
v1 = l1.pop()# 返回值是删除的那个值
print(l1)# >>>[1,2,3,"shen"]
print(v1)# >>>1
v2 = l1.pop(2)# 拿出删除的那个值
print(l1)# >>>[1,2,"shen"]
print(v2)# >>>3
  1. del 万能删除 ,彻底删除
l1 = [1, 2, 3, "shen", 1]
# del l1# 把整个l1删除,包括变量名
# print(l1)
del l1[0]# 彻底删除索引0位置的数据
print(l1)
  1. 成员运算符:in、not in
s1 = ['hello','world']
print("o"in s1)# >>>True
  1. len():获取列表中元素的个数
s1 = ['hello','world']
print(len(s1))

  1. for 变量 in 可迭代对象:循环

  2. .count():统计元素个数

l1 = [1, 2, 3, "shen", 1]
print(l1.count(1))

  1. .index():查找指定元素的第一个索引值,还可以指定查找范围,顾头不顾尾
l1 = [1, 2, 3, "shen", 1]
print(l1.index(2))
print(l1.index(1,1,8))

  1. .sort():在原列表上排序,默认从小往大排序,可以更改倒序

    sorted():python的内置方法,排序后生成新的列表,原列表不变

l1 = [5, 2, 1, 4]
# l1.sort()# 正序
l1.sort(reverse = True)# 倒序
print(l1)
l2 = sorted(l1)# python的内置方法,生成新列表
print(l2)
print(l1)# >>>[5,2,1,4]
l2 = sorted(l1)
l3 = sorted(l1,reverse=True)
print(l2)# >>>[1, 2, 4, 5]
print(l3)# >>>[5, 4, 2, 1]
print(l1)# >>>[5, 2, 1, 4]

  1. .clear():清空列表
l1 = [5, 2, 1, 4]
l1.clear()
print(l1)

队列:先进先出

l1 = []
l1.append(1)
print(l1)
l1.append(2)
print(l1)
l1.append(3)
print(l1)
l1.pop(0)
print(l1)
l1.pop(0)
print(l1)
l1.pop(0)
print(l1)
# >>>
[1]
[1, 2]
[1, 2, 3]
[2, 3]
[3]
[]

堆栈:先进后出

l1 = []
l1.append(1)
print(l1)
l1.append(2)
print(l1)
l1.append(3)
print(l1)
l1.pop()
print(l1)
l1.pop()
print(l1)
l1.pop()
print(l1)
# >>>
[1]
[1, 2]
[1, 2, 3]
[1, 2]
[1]
[]

列表能按索引取值,所以有序的,值变id不变,是可变类型,可以存多个值

posted @ 2019-11-07 15:36  Mr沈  阅读(197)  评论(0编辑  收藏  举报