python基础--列表
列表的概念
-
列表是一种有序和可更改的集合。
-
列表可以随时添加和删除其中的元素。
-
列表允许重复的成员。
-
列表使用
[]表示 -
列表的第一个元素的索引为0,最后一个元素的索引为-1。
-
创建列表:
list_name = []
列表的访问
列表切片
-
list_name[start:end:step]-
获取列表的子列表
-
start:开始索引 -
end:结束索引 -
step:步长
-
-
list_name = [1,2,100,3,4,5]
print('列表的副本,对其修改不影响源列表:',list_name[:])
print('获取从开始到末尾的列表,不包括末尾元素:',list_name[0:-1])
print('获取前几个元素的列表:',list_name[:3])
print('获取后几个元素的列表:',list_name[-3:])
print('获取从开始到末尾,步长为2的元素列表:',list_name[::2])
重复拼接
-
list_name * n-
返回重复n次列表元素的新列表
-
list_name = [1,2,100,3,4,5]
print(list_name * 2)
-
list_name + list_name-
拼接列表,返回新列表
-
list_name = [1,2,100,3,4,5]
new_list_name = [3,4]
print(list_name + new_list_name)
和,最大,最小运算
-
sum(list_name):求和 -
max(list_name):求最大值 -
min(list_name):求最小值
list_name = [1,2,100,3,4,5,8]
print(sum(list_name))
print(max(list_name))
print(min(list_name))
元素修改
-
list_name[index]=new_value-
通过列表名和索引访问列表对应的元素,然后把新的元素赋值给该索引。
-
-
注意:最后一个元素的索引是:
len(list_name)-1
list_name = [1,2,3,4,5]
list_name[3] = 9
print(list_name)
元素添加
-
list_name.append(new_element)-
把新元素附加到列表末尾。
-
list_name = [1,2,3,4,5]
list_name.append(6)
print(list_name)
-
list_name.insert(index,new_elemet)-
把新元素插到索引位置。
-
list_name = [1,2,3,4,5]
list_name.insert(0,5)
print(list_name)
-
list_name.extend(list_name)-
将列表元素(或任何可迭代的元素)添加到当前列表的末尾
-
list_name = [1,2,3,4]
l = list_name.copy()
l.append(5)
list_name.extend(l)
print(list_name)
元素删除
-
list_name.pop([index])-
删除索引位置的元素。缺省就是删除列表末尾的元素。
-
list_name = [1,2,3,4,5]
list_name.pop()
list_name.pop(3)
print(list_name)
-
del list_name[index]-
del语句是删除对象的,而Python一切都是对象,所以元素也是对象,可以使用del语句删除对应索引处的元素。
-
del list_name可以删除整个列表。
-
list_name = [1,2,3,4,5]
del list_name[-1]
print(list_name)
-
list_name.remove(element)-
通过指定元素删除元素
-
list_name = [1,2,3,4,5]
list_name.remove(4)
print(list_name)
-
list_name.clear()-
清空列表元素。
-
list_name = [1,2,3,4]
list_name.clear()
print(type(list_name))
print(list_name)
获取长度
-
len(list_name)-
获取列表长度
-
list_name = [1,2,3,4,5]
l = len(list_name)
print(l)
列表的函数
获取索引
-
list_name.index(value):通过列表的值,返回值的索引。
list_name = [1,2,3,4,5]
index = list_name.index(2)
print(index)
复制列表
-
list_name.copy()-
复制列表。对复制列表的操作不影响源列表。
-
list_name = [1,2,3,4]
l = list_name.copy()
l.append(5)
print(list_name,l)
统计次数
-
list_name.count(value)-
统计value值在列表中出现的次数。
-
list_name = [1,2,3,4]
print(list_name.count(2))
列表排序
-
list_name.sort([reverse = True|False])-
对列表进行排序,永久排序,影响源列表
-
reverse=True|False-
True:对列表进行从大到小排序 -
False:默认,对列表进行从小到大排序
-
-
list_name = [1,2,100,3,4,5]
list_name.sort()
print(list_name)
list_name.sort(reverse = True)
print(list_name)
-
sorted(list_name[,reverse = True|False])-
此函数也为其他可迭代对象使用。
-
对列表进行排序,暂时排序,不影响源列表
-
reverse=True|False-
True:对列表进行从大到小排序 -
False:默认,对列表进行从小到大排序
-
-
list_name = [1,2,100,3,4,5]
print(sorted(list_name))
print(sorted(list_name,reverse=True))
print(sorted(list_name,reverse=False))
print(list_name)
-
list_name.reverse()-
对列表进行排序,翻转排序,永久排序,影响源列表
-
list_name = [1,2,100,3,4,5]
list_name.reverse()
print(list_name)
list_name.reverse()
print(list_name)
其他函数和操作
-
range(start:end[:step])-
返回从start-end之间,每隔step步长的整数,range对象。
-
使用
list(range(start:end[:step]))函数可以快速创建数值列表。 -
使用
for...in...循环可以输出数值列表的元素
-
range_list = list(range(1,100))
print(range_list)
for r in range_list:
print(r,end='')
-
列表生成式
-
使用列表生成式可以快速创建新列表。
-
列表生成式中的
for...in...和if不需要:
-
new_list = [x**2 for x in range(1,10)]
print(new_list)
new_list = [x*y for x in list(range(1,10)) if x>2 for y in range(8,10)]
print(new_list)
浙公网安备 33010602011771号