常用函数和方法总结
(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内置函数链接
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)
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)