python基础学习(4)——list列表常用操作(以及range()函数和python内置函数)

本文总结了Python中list的常用操作,包括生成、添加和插入元素(涉及range()函数)、删除元素、复制列表、排序以及如何将两个列表对应元素组成字典,并介绍了列表的索引和截取。还特别讲解了range()函数的用法,指出其虽不直接生成列表,但可进行索引和切片操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 常用函数和方法总结
  • 列表基本操作
  • 生成列表
  • 添加插入元素(以及range()函数用法,以及Python内置函数)
  • 删除元素
  • 复制列表
  • 对列表元素进行排序
  • 两个列表一一对应,组成一个字典
  • 列表的索引与截取(列表元素的访问)

常用函数和方法总结

在这里插入图片描述
在这里插入图片描述

(1)生成列表

#生成列表
list1 = [] #生成空列表
print(list1)#[]
list1.append(1)
print(list1)#[1]

#通过list()函数生成列表
list2 = list(range(5))
print(list2)#[0, 1, 2, 3, 4]

(2)添加元素

#生成列表
list1 = [] #生成空列表
print(list1)#[]
list1.append(1)
print(list1)#[1]

#通过list()函数生成列表
list2 = list(range(5))
print(list2)#[0, 1, 2, 3, 4]

print(type(range(5)))#<class 'range'> 不是列表
'''
注意append()和extend()方法的区别
'''
#L.append(Object)和L.extend(iterable)

list1 = list(range(0,4))
list1.append(['a','b']) #append()方法将添加的元素看成一个整体

list2 = list(range(0,4))
list2.extend(['a','b'])
print(list1)  #[0, 1, 2, 3, ['a', 'b']]
print(list2)  #[0, 1, 2, 3, 'a', 'b']

#L.insert(index,object),在索引处添加object

list1 = list(range(0,6))
print(list1)   #[0, 1, 2, 3, 4, 5]
list1.insert(3,'a')
print(list1)  #[0, 1, 2, 'a', 3, 4, 5]

list1.insert(5,['c','b'])#添加入一个列表
print(list1) #[0, 1, 2, 'a', 3, ['c', 'b'], 4, 5]

补充range()用法,range()只能生成整数python内置函数链接
在这里插入图片描述

range()虽然返回不是列表,但可以使用索引操作,也可以通过索引进行切片

range1 = range(10)
print(range1[0])
for i in range1[::2]: #i=0,2,4,6,8
    print(i*'h')

在这里插入图片描述

(3)删除元素

list1 = ['Jack','Tom','Mark','Tom',2]

#remove方法,移除列表中某个值的第一个匹配项
list1.remove('Jack')
print(list1) #['Tom', 'Mark', 'Tom', 2]

#del
del list1[1:3]
print(list1) #['Tom', 2]

#clear()
list1.clear()
print(list1) #[]

(4)复制

#如果不复制,直接赋值,会出现以下情况
list1 = list(range(0,4))
list2 = list1
list2[0] = 'a'
print(list1)
print(list2)

'''
从上面可以看出,如果不复制,则当list2改变时,list1也会改变
因为两者指向同一对象
'''
#复制l.copy()

list1 = list(range(0,4))
list2 = list1.copy()
list2[0] = 'a'
print(list1) #[0, 1, 2, 3]
print(list2) #['a', 1, 2, 3]

(5)排序

#L.sort(reverse=False)方法和sorted(reverse=False)函数
list1 = [3,1,6,4,9,7]
list1.sort()
print(list1) #[1, 3, 4, 6, 7, 9]
list1.sort(reverse=True) #是否反向
print(list1) #[9, 7, 6, 4, 3, 1]

list2 = sorted(list1) #返回一个新的列表,原列表不变
print(list1) #[9, 7, 6, 4, 3, 1]
print(list2)#[1, 3, 4, 6, 7, 9]

(6)练习:两个列表一一对应,组成一个字典

list1 = ['tom','mark','mary']
list2 = [24,35,26]

#法一
dict1 = {}
for i in range(len(list1)):
    dict1[list1[i]]=list2[i]
print(dict1)

#法二
list3 = []
for i in range(len(list1)):
    lst = [list1[i],list2[i]]
    list3.append(lst)
dict2 = dict(list3)
print(dict2)    

在这里插入图片描述
(7)列表的索引与截取

list1 = list(range(0,7))
#[start:stop:step]
lst1 = list1[2]
lst2 = list1[0:2] #不包括停止项
lst3 = list1[0:4:2] #不包括停止项
lst4 = list1[::2] #从头到尾为,步长为2。(包括最后一个元素)生成列表

print("list1:",list1)
print('lst1:',lst1)
print('lst2:',lst2)
print('lst3:',lst3)
print('lst4:',lst4)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值