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列表有什么用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


分享文章:Python列表有什么用
URL标题:http://ybzwz.com/article/iegsgg.html