Python教程

11.python 列表

本文主要是介绍11.python 列表,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

列表

  为什么需要列表
    变量可以存储一个元素,而列表是一个大容器,可以存储n多元素,程序可以方便的对这些数据进行整体操作     列表相当于其它语言中的个数组
  列表的创建与删除
    列表需要使用中括号[],元素之间使用英文的逗号进行分割     列表的创建       使用中括号创建
# ----------列表----------
lst = ['python', 'pycharm', '', 1]

      调用内置函数list()

a = list(['python', 'pycharm', '', 1])
print(id(a), a, type(a))
0
  列表的特点
    列表元素按顺序有序排序     索引映射为一个数据     列表可以存储重复数据     任意数据类型混存     根据需要动态分配和回收内存
  列表的删除
# ---------列表删除----------
lst = ['python', 'pycharm', '', 1]
# 按下标删除
del lst[2]  # ['python', 'pycharm', 1]
# 按内容删除
lst.remove(1)  # ['python', 'pycharm']
# 清空列表
lst.clear()  # []
0
  列表的查询操作
    获取列表中指定元素的索引:index()       如果所查列表中存在多个相同元素,只返回第一个元素的索引       如果查询的元素再列表中不存在,则会抛出ValueError       还可以在指定的start和stop之间进行查找
    获取列表中的单个元素
      正向索引从0到N-1       逆向索引从-N到-1       指定索引不存,抛出indexError
# ----------查询----------
ls = ['python', 'pycharm', 'aa', 'c']
lst = [1, 2, 10, 100, 1]
print(lst.index(1))  # 0,只返回所查元素的第一个的索引
print(lst.index(2, 1, 5))  # 在下标1-5之间的元素中查找2
print(len(lst), max(lst), min(lst), list(lst))  # 列表元素个数、列表中最大值
print(max(ls), min(ls))
print(lst[2], ls[-2])
0
    获取列表中多个元素
      list[start,stop,step]       切片操作         结果:原列表片段的拷贝         范围:[start,stop]         step默认是1         step为正数:           切片的start默认是1,切片的stop默认是最后一个元素         step为负数:           切片的start默认是最后一个元素,切片的stop默认是第一位元素
# 获取多个元素
print(lst[0:2])
print(lst[0:4:2], lst[-1:-5:-2])
0
    判断指定元素在列表中是否存在
      column in list       column not in list       列表元素的遍历         for i in list:           操作
print(10 in lst)
print(100 not in lst)
for i in lst:
    print(i)
0
  列表的增删改操作
    列表元素的增加操作
增加操作 方法 操作描述
append() 在列表尾部增加一个元素
extend() 在列表的末尾至少增加一个元素
insert() 在列表的任意位置增加一个元素
切片 在列表的任意位置添加至少一个元素
# 列表元素的增加操作
lst = [10, 20, 30]
print(lst)
lst.append(50)  # append,在最后添加50
print("1次操作:"+str(lst))
tup = ('60', '80')
lst.extend(tup)  # extend,在最后添加tup
print("2次操作:"+str(lst))
lst.insert(1, 15)  # insert,在下标1的地方添加15
print("3次操作:"+str(lst))
lst1 = [30, 40, 50]  # 切片,将原列表中2到3的数据删去,使用填充的元素进行添加
lst[2:3] = lst1
print("4次操作:"+str(lst))
0
    列表元素的删除操作
删除操作 方法 操作描述
remove() 一次删除一个元素
重复的元素只能删除第一个
元素不存在抛出ValueError
pop() 删除一个指定索引位置上的元素
指定索引不存在抛出IndexError
不指定索引删除列表中最后一个元素
clear() 请空列表
del 删除列表
切片 一次至少删除一个元素
# 列表元素的删除操作
lst = [10, 15, 30, 40, 50, 30, 80]
lst.remove(50)
print(lst)
lst.pop(4)
print(lst)
del lst[-3:-1]
print(lst)
newlst = lst[1:3]  # 切片,生成一个新的列表对象
print(newlst)
lst[1:3] = []  # 不产生新的列表对象,而是删除原列表中的内容
print(lst)
lst.clear()
print(lst)
del lst  # 删除整个列表
print(lst)
0
    列表元素的修改操作
      为指定索引的元素赋予一个新值       为指定的切片赋予一个新值
# 列表元素的修改操作
lst = [1, 2, 3, 4, 5, 6, 7, 8]
lst[2] = 4
print(lst)
lst[1:3] = [5, 10, 15]
print(lst)
0
    列表元素的排序
      常见的两种方法:         调用sort()方法,列中的所有元素默认按照从小到大的顺序进行排列,可以指定reverse=True来降序排序         调用内置函数sorted(),产生一个新的列表对象,可以指定reverse=True,进行降序排序,愿列表不发生变化
# ----------排序----------
# sort
lst = [2, 3, 1, 5, 4, 6, 8, 7]
lst.sort()  # 正序排列
print(lst)
lst.sort(reverse=True)  # 倒序排列
print(lst)
# sorted
lst = [2, 3, 1, 5, 4, 6, 8, 7]
print("原列表"+str(lst))
newlst = sorted(lst)
print(newlst)
newlst = sorted(lst, reverse=True)
print(newlst) 
0
  列表生成式
    列表生成式简称‘生成列表的公式’     语法格式:[i*i for i in range(1,10)]     注意事项:‘表示列表元素的表达式’中通常包含自定义变量
import math
lst = [round(math.sqrt(i*2),1) for i in range(1, 10)]
print(lst)
0
这篇关于11.python 列表的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!