千家信息网

Python列表有什么用

发表于:2025-01-22 作者:千家信息网编辑
千家信息网最后更新 2025年01月22日,这篇文章给大家分享的是有关Python列表有什么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Python 列表是一个任意类型对象的位置相关的游戏集合,它没有固定大小,可
千家信息网最后更新 2025年01月22日Python列表有什么用

这篇文章给大家分享的是有关Python列表有什么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

Python 列表是一个任意类型对象的位置相关的游戏集合,它没有固定大小,可通过对偏移量进行赋值。

列表操作

in / not in 判断元素在列表当中是否存在

a= [1,2,3]if(1 in a):    print("在")

列表生成器

[x for x in range(10)]

a = list(range(10))# 循环range(10),并把每个元素存起来生成新的列表 ,相当于 list(range(10))list1 = [i for i in range(10)]# 循环range(10),并把每个元素的平方存起来生成新的列表           list2 = [i*i for i in range(10)]print(range(10))print(a)print(list1)print(list2)#输出range(0, 10)[0, 1, 2, 3, 4, 5, 6, 7, 8, 9][0, 1, 2, 3, 4, 5, 6, 7, 8, 9][0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

len : 求长度

索引:

>>> a=[1,2,3]>>> a[1, 2, 3]>>> a[0]1>>> a[0]=0                     #通过a[index] ,可改变列表对应索引号的值>>> a[0, 2, 3]>>> a[3]=4                     #如果索引号不存在,则报错Traceback (most recent call last):  File "", line 1, in IndexError: list assignment index out of range>>>

切片:不改变原来列表,返回新的列表
[start:end:step] 起始位置:结束位置:步长
步长为负数的话,就反着切。

>>> a [0, 2, 3]>>> a[:]              # [:] 取整个索引[0, 2, 3]>>> a[1:3]            # 从索引1,到索引2 进行切片,包头不包尾,返回新的列表[2, 3]>>> a[1:][2, 3]>>> a[0:][0, 2, 3]>>> a[0:-1][0, 2]

列表的特定操作:

添加元素:改变原来列表

append() :往列表索引末尾,添加其他元素 ,添加的元素只占1个索引位置,改变原来列表

a = [1,2,3]b = [4,5,6]a.append(b)[1,2,3,[4,5,6]]

extend(): 向列表尾部追加一个序列(iterble),将序列中的每个元素都追加进来

#extend() >>> a=[1,2,3]>>> a[1, 2, 3]>>> a.extend([3,5,6])>>> a[1, 2, 3, 3, 5, 6]>>> a.extend({'name':'lee','age':18})>>> a[1, 2, 3, 3, 5, 6, 'age', 'name']>>> a.extend((7,8))>>> a[1, 2, 3, 3, 5, 6, 'age', 'name', 7, 8]

insert(index,元素) 在任意位置添加一个元素

a = [1,2,3]a.insert(0,-1)a.insert(5,4) #超出范围,默认往末尾添加#输出 [-1,1,2,3,4]

+:两个列表相加,如果不是列表会报错,不改变原来列表,生成1个新的列表

+=:相当于extend()

inser(index,object):往索引位置中添加值

切片添加元素

a = [1,2,3]b = [4,5,6]a[1:]=b   #相当于 列表a[1] 后面的元素全部替换掉print(a)#输出 [1, 4, 5, 6]

区别:

  • append和insert ,+= 都会改变原来的列表,而+不改变原来列表的大小,只会生成新的列表

  • + 后面 必须为列表,其他可以为任意元素

>>> a=[1,2,3]>>> a.append('abc')   #从末尾添加元素>>> a[1, 2, 3, 'abc']>>> a+'456'                 Traceback (most recent call last):  File "", line 1, in TypeError: can only concatenate list (not "str") to list>>> a+['456'][1, 2, 3, 'abc', '456']

删除元素:改变原来列表

del(a) :删除整个列表

del(a[0]):删除 a 列表中的第一个元素,同pop(0)

pop(n):删除列表固定(索引)中的元素

remove(value):删除列表中的值

clear(): 删除列表中所有的值

列表其他方法:

sort():按照升序,对列表进行排序,只能对相同类型进行排序,如列表中全是 数字或字母

reverse():对列表进行翻转 ,列表中可以含有不同元素

>>> b=[1,2,3,4][4, 3, 2, 1]>>> b.sort()      #对B进行升序排序>>> b[1, 2, 3, 4]>>> b.reverse()   #对B进行翻转>>> b>>> c=[1,'b',4,'c']  >>> c.reverse()    #对C进行翻转>>> c['c', 4, 'b', 1]

二者差别:sort() 要求列表中元素为同一类型,reverse()不需要,只是单纯翻转列表中元素的位置。

sort() 支持传1个key 作为指定参数来排序

a = [        {'id':11},        {'id':33},        {'id':2}]a.sort(key=lambda a:a['id'])print(a)

index(value):查找列表当中的元素的下标位置,如果存在,则返回索引位置,不存在则报错,如果有相同的值,则默认返回第一个值的下标
index(value,start,end) :start end 从固定(起始下标,结束下标)下标位置查找,不存在报错

a = ["hello","world",3,"hello"]b = a.index("hello")print(b)#输出0,有两个hello,默认返回第一个下标c = [1,2,3,4,5,6]c.index(2,2,4)#报错,从下标2 到4的位置 查找值为2 的下标,因为没有所以报错。#c[2]是3 c[4] 是5

count(value):统计列表当中包含某一元素的个人

copy(): 复制列表

感谢各位的阅读!关于"Python列表有什么用"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

0