Python列表基础知识

本文详细介绍了Python列表的基本知识,包括列表的创建、操作方法如append、insert、index、remove、sort等,以及元素的读取、修改、删除和合并。此外,还讲解了列表的排序和计数功能,展示了如何通过不同方法改变和查询列表内容。
摘要由CSDN通过智能技术生成

Python学习之列表
列表基本知识:(List)是可变的序列,也是一种可以存储各种数据类型的集合,用中括号([ ])表示列表的开始和结束,元素之间用逗号(,)分隔。列表中的每一个元素提供一个对应的下标。
在这里插入图片描述
列表的下标也是从0开始
在这里插入图片描述
列表的基本操作方法
列表名.方法

方法方法功能描述
append在列表尾部增加元素
clear列表清空
copy复制生成另一个列表
count统计指定元素的个数
extend两个列表元素合并
index返回指定元素的下标
insert在指定位置插入新元素
pop删除并返回指定下标对应的元素
remove删除列表中指定元素
reverse反转列表元素顺序
sort对列表元素进行排序

help(list.append)提供的是英文帮助

列表元素增加操作
append方法:在列表尾部添加新元素

p=['apple','peach']
p.append('pear')
p
#['apple', 'peach', 'pear'] 使用append函数在尾部添加元素,一次只能添加一个

insert()方法:在指定位置添加元素
insert(index,元素)

 p.insert(0,'watermelon')
 p
#['watermelon', 'apple', 'peach', 'pear']
 p.insert(1,2)
 p
#['watermelon', 2, 'apple', 'peach', 'pear']
>>> 

列表元素查找

index()方法查找元素
格式为:L.index(value,[start[,stop]]) L是列表元素,value是要查找的元素
start代表开始查找的下标数,stop代表结束的下标数,若查到元素,则返回第一个找到的元素下标,没有找到会报错。

list=['Jerry','Tom',1,2,3,1]
list
#['Jerry', 'Tom', 1, 2, 3, 1]
list.index('Tom')
#1
list.index(1)
#2 在列表中查找元素1,这里只查第一个
list.index(1,3)
#5从下标3开始查找元素1
list.index('b')#不存在元素,会显示出错信息
'''Traceback (most recent call last):
  File "<pyshell#19>", line 1, in <module>
    list.index('b')
ValueError: 'b' is not in list'''

in成员运算判断
只是判断指定元素是否在列表里
若在,返回True,否则返回False
在这里插入图片描述
用下标读取对应元素

list1=['Jerry',1,2,3]
list1[2]
#2

切片读取

list1=['Jerry',1,2,3]
list1[1:] #从下标1开始的列表元素
#[1,2,3]

列表元素修改
可以通过指定下标,对对应的元素进行赋值修改,与字符串相比,列表元素可以通过指定下标进行修改,具有更大的操作灵活性。

>>> list1=['Jerry',1,2,3]
>>> list1
['Jerry', 1, 2, 3]
>>> list1[3]=2  #对下标为3的元素进行修改
>>> list1
['Jerry', 1, 2, 2]
>>> list1[2]='课'# 对下标2的元素进行修改
>>> list1
['Jerry', 1, '课', 2]

列表元素删除
方法:clear()方法,pop()方法,remove()方法,del函数
clear()方法:清除列表里所有元素,使其变为空列表

>>> list=['red','blue','yellow']
>>> list
['red', 'blue', 'yellow']
>>> list.clear()
>>> list
[]

pop()方法:格式为L.pop([index]),L为列表元素,index为可选参数,指定参数时,在指定参数下标处弹出对应元素并删除,不指定参数时,默认从列表尾部弹出并删除一个元素。

>>> list=['ball1','ball2','ball3']
>>> l=list.pop(0)
>>> print(l,' ',list)
ball1   ['ball2', 'ball3'] #弹出并删除
>>> a=list.pop()
>>> print(a,' ',list)
ball3   ['ball2']

remove()方法:格式为L.remove(value),L代表列表元素,value代表需要删除的元素,当需要删除的列表元素具有多个时,一次只能删除左边第一个。

>>> list=['ball1','ball2','ball3','ball1','ball2']
>>> list
['ball1', 'ball2', 'ball3', 'ball1', 'ball2']
>>> list.remove('ball2')
>>> list
['ball1', 'ball3', 'ball1', 'ball2'] #一次删除左边第一个

del函数:可以删除列表里指定的元素,也可以把整个列表对象删除

>>> list1=['ball1','ball2','ball3']
>>> del(list1[2])
>>> list1
['ball1', 'ball2'] #删除了下标为2的列表
>>> del list1 #删除了整个列表元素,再次调用会报错
>>> list1
Traceback (most recent call last):
  File "<pyshell#60>", line 1, in <module>
    list1
NameError: name 'list1' is not defined

列表元素合并
“+”方法和extend()方法
extend()方法:不会导致内存地址的变化

>>> t1=['b1','b2','b3']
>>> t2=['a','b','c']
>>> t1.extend(t2)
>>> t1
['b1', 'b2', 'b3', 'a', 'b', 'c']

“+”方法合并:可能会导致内存地址号的变化

>>> t1=['b1','b2','b3']
>>> t2=['a','b','c']
>>> t1+=t2
>>> t1
['b1', 'b2', 'b3', 'a', 'b', 'c']

列表元素排序
sort()排序方法:根据ASCII码排序,格式为:L.sort(key=None,reverse=False)。L为列表对象,key为可选参数,如key=str.lower,代表把所有的元素字母从大写转化为小写。默认情况下,是增序排列,reverse=True,为减序排列。

>>> list=[1,3,4,2,0,9,7,8]
>>> list.sort()#默认增序排列
>>> list
[0, 1, 2, 3, 4, 7, 8, 9]
>>> list.sort(reverse=True) #减序排列
>>> list
[9, 8, 7, 4, 3, 2, 1, 0]
>>> 
>>> list1=['Tom','tim','john','Jack']
>>> listA=list1.copy()
>>> listA.sort()#默认排序
>>> listA
['Jack', 'Tom', 'john', 'tim']
>>> listB=list1.copy()
>>> listB.sort(key=str.lower)#把大写转化为小写,在进行排序
>>> listB
['Jack', 'john', 'tim', 'Tom']

列表其他的一些方法
copy()方法:格式为L.copy(),生成的新列表,内存地址和原先地址不一致,和直接赋值有很大区别。

>>> list1=['Tom','tim','john','Jack']
>>> listA=list1.copy()
>>> listB=list1.copy()
>>> id(list1)
2539745448648
>>> id(listA)
2539745329608
>>> id(listB)
2539745271304
>>> list=list1 #直接赋值,内存地址不变
>>> id(list)
2539745448648

count()方法:格式为L.count(value),L代表列表元素,e为代表要统计的元素,可以实现对指定元素格式的统计。

>>> list=[1,1,2,3,1,4,2,3,4,5,6,7,8]
>>> list.count(1)
3
>>> 

reverse()方法:L.reverse(),对列表元素永久性反向记录。反向操作后,内存地址不变。

>>> list=[1,2,3,4,5,6,7,8,9,10]
>>> list
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> list.reverse()
>>> list
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
>>> 
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值