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

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

常用函数和方法总结

python基础学习(4)——list列表常用操作(以及range()函数和python内置函数)_第1张图片
python基础学习(4)——list列表常用操作(以及range()函数和python内置函数)_第2张图片

(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)))# 不是列表
'''
注意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内置函数链接
python基础学习(4)——list列表常用操作(以及range()函数和python内置函数)_第3张图片

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

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

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

(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)

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

你可能感兴趣的:(python,python,列表)