python 列表总结

1.列表的定义
序号列表定义的方式格式说明
1空列表变量名 = []
2含有元素的列表变量名 = [元素1, 元素2......]元素:可以是整数、浮点数、单个字符、列表、元组、字符串、集合、字典等
3列表推导式变量名 = [expression for iter_val in iterable if cond_expr]详见代码
(1)空列表的定义
# 1.定义空列表
# 格式:变量名 = []
list1 = []
print(list1)
"输出结果:[]"
(2)含有元素的列表的定义
list2 = [1, 1.1, 'a', [1, 2, 3, 4], (1, 2, 3, 4), {1, 2, 3, 4}, {"1": 1, "2": 2}]
print(list2)
"输出结果:[1, 1.1, 'a', [1, 2, 3, 4], (1, 2, 3, 4), {1, 2, 3, 4}, {'1': 1, '2': 2}]"
(3)列表推导式的定义
# 3.列表推导式(没筛选和有筛选)
# 格式:变量名 = [ expression for iter_val in iterable if cond_expr ]
# 详细解释:
# expression:关于变量iter_val的表达式,其输出结果会存储到变量中
# for...in...:把迭代对象中的元素依次取出来
# iter_val:变量名,这里是把迭代对象的元素赋值给变量了
# iterable:可迭代对象,例如列表等
# if:(非必填)对元素进行判断,也就是元素的筛选。当cond_expr这个表达式正确的时候,该元素会进入表达式expression中
# cond_expr:(非必填)表达式,返回值为True或者False

# 没筛选的列表推导式
list3 = [i for i in range(10)]
print(list3)
"输出结果:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]"
# 有筛选的列表推导式
list4 = [x for x in range(10) if x % 2 == 0]
print(list4)
"输出结果:[0, 2, 4, 6, 8]"
2.列表的修改
序号方式格式解释
1通过列表下标的方式进行修改list[index] = 数值

index:列表元素的下标

数值:可以是整数、浮点数或者序列

2通过列表切片的方式进行修改

list[start:end:step] = iterable。

iterable:可迭代对象(列表、元组、字符串、集合、字典)

(1)当没有填写步长step或者step填写为1的时候,

左边切片元素的个数>右边可迭代对象元素个数,前者没有替换的元素就会被删除;

左边的切片元素个数<右边可迭代对象的元素个数,后者的元素会按照下标顺序继续添加。

(2)当填写的切片步长step为非1的时候,左边切片元素个数>或者<右边可迭代对象元素个数,会直接报错。

3.列表的函数
(1)十大内置函数

      

序号函数功能
1len()len()函数求出列表内元素的个数

2

max()max()函数求出列表元素中的最大值
3min()min()函数求出列表元素中的最小值
4sum()sum()函数求出列表元素的和
5list()list()函数对列表本身没有任何作用
6tuple()tuple()函数让列表转换成元组
7str()str()函数让列表转换成字符串
8sortedsorted()函数让列表元素进行排序
9reversed()reversed()函数让列表元素反转
10enumerate()enumerate()函数让列表的索引和元素合成元组
# 序列的十大内置函数都可以使用
list1 = [1, 2, 3, 4]
print(len(list1))   # len()函数求出列表内元素的个数
print(max(list1))   # max()函数求出列表元素中的最大值
print(min(list1))   # min()函数求出列表元素中的最小值
print(sum(list1))   # sum()函数求出列表元素的和
print(list(list1))  # list()函数对列表本身没有任何作用
print(tuple(list1)) # tuple()函数让列表转换成元组
print(str(list1))   # str()函数让列表转换成字符串
print(sorted(list1))    # sorted()函数让列表元素进行排序
print(reversed(list1))  # reversed()函数让列表元素反转
print(enumerate(list1)) # enumerate()函数让列表的索引和元素合成元组
(2)向列表添加元素的函数
序号函数名格式解释功能
1appendlist.append(item)
item:表示要添加的对象(可以是数字或者序列)
向列表添加单个元素,并且会把序列(列表、元组、字符串、集合、字典)看成列表的单个元素添加。
2extendlist.extend(iterable)
iterable:表示可迭代对象(列表、元组、字符串、集合和字典)
无法向列表添加单个元素,但是可以把序列(列表、元组、字符串、集合、字典)中的每个元素挨个添加到列表中。添加字典的时候只能添加key值,无法添加value值。
3insertlist.insert(index, item)
index:表示添加的对象的位置,也就是列表中元素的下标
item:表示添加的对象(数字或序列)
向列表所指定的下标位置添加单个元素,并且会把序列(列表、元组、字符串、集合、字典)看成列表的单个元素添加。当所指定的下标超出列表宽度,就直接把对象添加到列表的末尾。
append()函数
# 向列表添加元素
# 1.list.append()
# 语法格式:list.append(item)
# 详细解释:
# list:表示列表
# append:表示添加函数
# item:表示要添加的对象(可以是数字或者序列)

# 定义6个列表
list1 = [1, 2, 3, 4]
list2 = [1, 2, 3, 4]
list3 = [1, 2, 3, 4]
list4 = [1, 2, 3, 4]
list5 = [1, 2, 3, 4]
list6 = [1, 2, 3, 4]

# 添加单个元素(整数、定点数)
list1.append(10)
print(list1)
"输出结果:[1, 2, 3, 4, 10]"
list1.append(10.1)
print(list1)
"输出结果:[1, 2, 3, 4, 10, 10.1]"


# 把序列(列表、元组、字符串、集合、字典)看成列表的单个元素添加
# 添加列表
list2.append([1, 2, 3, 4])
print(list2)
"输出结果:[1, 2, 3, 4, [1, 2, 3, 4]]"
# 添加元组
list3.append((1, 2, 3, 4))
print(list3)
"输出结果:[1, 2, 3, 4, (1, 2, 3, 4)]"
# 添加字符串
list4.append("大概火车")
print(list4)
"输出结果:[1, 2, 3, 4, '大概火车']"
# 添加集合
list5.append({1, 2, 3, 4})
print(list5)
"输出结果:[1, 2, 3, 4, {1, 2, 3, 4}]"
# 添加字典(key值和value值都可以添加)
list6.append({"1": 1, "2": 2})
print(list6)
"输出结果:[1, 2, 3, 4, {'1': 1, '2': 2}]"
extend()函数
# 2.extend
# 语法格式:list.extend(iterable)
# 详细解释:
# list:表示列表
# extend:表示添加函数
# iterable:表示可迭代对象(列表、元组、字符串、集合和字典)

# 定义6个列表
list1 = [1, 2, 3, 4]
list2 = [1, 2, 3, 4]
list3 = [1, 2, 3, 4]
list4 = [1, 2, 3, 4]
list5 = [1, 2, 3, 4]
list6 = [1, 2, 3, 4]

# # 无法添加单个元素(整数、定点数)
# list1.extend(10)
# print(list1)
# "报错"
# list1.extend(10.1)
# print(list1)
# "报错"

# 挨个添加序列((列表、元组、字符串、集合、字典))中的元素
# 添加列表
list2.extend([1, 2, 3, 4])
print(list2)
"输出结果:[1, 2, 3, 4, 1, 2, 3, 4]"
# 添加元组
list3.extend((1, 2, 3, 4))
print(list3)
"输出结果:[1, 2, 3, 4, 1, 2, 3, 4]"
# 添加字符串
list4.extend("大概火车")
print(list4)
"输出结果:[1, 2, 3, 4, '大', '概', '火', '车']"
# 添加集合
list5.extend({1, 2, 3, 4})
print(list5)
"输出结果:[1, 2, 3, 4, 1, 2, 3, 4]"
# 添加字典(只能挨个添加key值)
print(list6)
list6.extend({"1": 1, "2": 2})
"输出结果:[1, 2, 3, 4, '1', '2']"
insert()函数
# 3.insert
# 语法格式:list.insert(index, item)
# 详细解释:
# list:表示列表
# insert:表示添加函数
# index:表示添加的对象的位置,也就是列表中元素的下标
# item:表示添加的对象(数字或序列)
# 注意事项:当所指定的下标超出列表宽度,就直接把对象添加到列表的末尾

# 定义6个列表
list1 = [1, 2, 3, 4]
list2 = [1, 2, 3, 4]
list3 = [1, 2, 3, 4]
list4 = [1, 2, 3, 4]
list5 = [1, 2, 3, 4]
list6 = [1, 2, 3, 4]

# 加单个元素(整数、定点数)
# 在下标为0的位置添加10
list1.insert(0, 10)
print(list1)
"输出结果:[10, 1, 2, 3, 4]"
# 在下标为0的位置添加10.1
list1.insert(0, 10.1)
print(list1)
"输出结果:[10.1, 10, 1, 2, 3, 4]"

# 把序列(列表、元组、字符串、集合、字典)看成单个元素添加
# 添加列表
list2.insert(0, [1, 2, 3, 4])
print(list2)
"输出结果:[[1, 2, 3, 4], 1, 2, 3, 4]"
# 添加元组
list3.insert(0, (1, 2, 3, 4))
print(list3)
"输出结果:[(1, 2, 3, 4), 1, 2, 3, 4]"
# 添加字符串
list4.insert(0, "大概火车")
print(list4)
"输出结果:['大概火车', 1, 2, 3, 4]"
# 添加集合
list5.insert(0, {1, 2, 3, 4})
print(list5)
"输出结果:[{1, 2, 3, 4}, 1, 2, 3, 4]"
# 添加字典(可以添加key值和value值)
print(list6)
list6.insert(0, {"1": 1, "2": 2})
"输出结果:[{'1': 1, '2': 2}, 1, 2, 3, 4]"
(3)删除列表中元素的函数
序号函数名格式解释功能
1del
1.直接删除列表:del list
2.通过下标删除元素:del list[index]
3.通过切片删除元素:del list[start:end:step]
删除列表或者删除列表的某个元素
2pop
list.pop(index)
index:表示要删除的列表元素的下标删除指定下标的列表元素
3remove
list.remove(value)
value:表示要删除列表元素的值删除指定值的列表元素
4clearlist.clear()小括号内不用填写形式参数,留空就可以清空列表
del()函数
# 删除列表中的元素(四个函数)

# 1.del可以通过以下三种方式删除列表中的元素,且不会返回被删除的值
# 格式1,直接删除列表:del list
# 格式2,通过下标删除元素:del list[index]
# 格式3,通过切片删除元素:del list[start:end:step]
# 注意事项:当列表下标超出列表宽度的时候,就报错

# 详细解释(格式)
# del:表示删除函数
# list:表示列表名字

# 详细解释(格式2)
# del:表示删除函数
# list:表示列表名字
# index:表示下标

# 详细解释(格式3)
# del:表示删除函数
# list:表示列表名字
# start:表示切片开始的位置
# end:表示切片结束的位置
# step:表示切片的步长

# 格式1:直接删除列表
list1 = [1, 2, 3, 4]
del list1
print(list1)
"报错"

# 格式2:通过列表下标删除列表元素
list1 = [1, 2, 3, 4]
del list1[0]
print(list1)
"输出结果:[2, 3, 4]"

# 格式3:通过列表切片删除列表元素
list1 = [1, 2, 3, 4]
del list1[0:1]
print(list1)
"输出结果:[2, 3, 4]"
pop()函数
# 2.pop根据列表下标删除元素,会返回被删除的值
# 格式:list.pop(index)
# 详细解释:
# list:表示列表名字
# pop:表示删除函数
# index:表示列表下标
# 注意事项:(1)index可以不填,默认值为列表末尾的下标 (2)当列表下标超出列表宽度的时候,会报错

list1 = [1, 2, 3, 4]
element = list1.pop()
print(element)
"输出结果:4"
print(list1)
"输出结果:[1, 2, 3]"
remove()函数
# 3.remove根据列表的元素值删除第一个出现的元素,不会返回被删除的值
# 格式:list.remove(value)
# 详细解释:
# list:表示列表的名字
# remove:表示删除函数
# value:表示要删除的元素值
# 注意事项:(1)因为当value在list中不存在的时候,会报错,所以在使用remove前要检查该元素是否存在 (2)当value在list中有多次出现,只会删除第一个出现的value值

list1 = [1, 1, 1, 1]
# 使用if in语句判断要删除的元素值是否在列表中,防止报错
if 1 in list1:
    list1.remove(1)
    print(list1)
else:
    print("'1' is not in list")
"输出结果:[1, 1, 1]"
clear()函数
# 4.clear把列表中所有元素删除
list1 = [1, 2, 3, 4]
list1.clear()
print(list1)
"输出结果:[]"
(4)查找列表中元素的函数
序号函数名格式解释功能
1index()list.index(object, start, end)

object:表示要查找的列表元素值

stat和end:表示查找的起始位置,非必填

返回某元素值在列表的下标;

如果object在列表list中存在多个,只会返回第一个出现的object的下标;

start和end没填写的时候,默认范围为整个列表;

当要查找的object在list中不存在的时候,会报错

2count()list.count(object)object:表示要查找的列表元素值

返回某元素在列表中出现的个数;

当所查找的object在列表list中不存在的时候,会返回0

     index()函数
# 查找列表中的元素(两个函数)

# 1.index()返回某元素值在列表中的下标
# 格式:list.index(object, start, end)
# 详细解释:
# list:表示列表名字
# index:表示查找函数
# object:表示要查找的列表元素值
# start:表示查找范围的开始位置(非必填)
# end:表示查找范围的结束位置(非必填)
# 注意事项:
# (1)如果object在列表list中存在多个,只会返回第一个出现object的下标
# (2)start和end没填写时,默认范围是整个列表
# (3)当要查找的object在list中不存在的时候,会报错

list1 = [1, 1, 1, 1]
# 使用if in判断object是否在list1中,预防报错
if 1 in list1:
    index1 = list1.index(1)
    print(index1)
else:
    print("1不在list1中")
"输出结果:0"

list2 = [1, 2, 3, 4]
if 2 in list2:
    index2 = list2.index(2, 0, 2)
    print(index2)
else:
    print("2不在list2中")
"输出结果:1"
 count()函数
# count()返回列表某元素值出现的个数
# 格式:list.count(object)
# 详细解释:
# list:表示列表名字
# count:表示查找函数
# object:表示要查找的列表元素值
# 注意事项:当所查找的object在list中不存在,其返回值是0

list1 = [1, 1, 3, 4]
number1 = list1.count(1)
print(number1)
"输出结果:2"

list2 = [1, 1, 3, 4]
number2 = list2.count('大')
print(number2)
"输出结果:0"

(4)列表的排序
     
序号函数名格式解释功能
1sort()list.sort(reverse=bool)reverse:表示颠倒,也就是让原来的列表是升序还是降序

把原来的列表进行升序或者降序的排列。

sort函数是直接修改原来的列表,不会生成新的列表。

当reverse=bool不填的时候,默认是从小到大排序。

        sort()函数
# 列表排序(一个函数)

# sort()把原来的列表排序
# 格式:list.sort(reverse=bool)
# 详细解释:
# list:表示列表名字
# sort:表示排序函数
# reverse:表示颠倒,也就是是否要把排列顺序(默认升序)反过来(非必填)
# bool:表示bool值,也就是True或者False
# 注意事项:
# (1)sort函数是直接修改原来的列表,不是生成新的列表
# (2)当reverse=bool不填的时候,默认是从小到大排序

list1 = [4, 3, 2, 1]
list1.sort()
print(list1)
"输出结果:[1, 2, 3, 4]"

list2 = [1, 2, 3, 4]
list2.sort(reverse=True)
print(list2)
"输出结果:[4, 3, 2, 1]"

        

  • 22
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值