列表的函数
这篇是对列表的操作函数
列表还记得吗?用中括号,括起来的元素 []
1、append 函数
解释:是将元素添加到列表中,并且添加的元素,只会添加到在列表的末尾
添加的元素,可以是任何类型(字符,数值,字典,元组,列表)
- 例 子:
- info= ['c#','Java','Python']
- info.append('c++')
- info.append(21.34)
- info.append(('a','b'))
- info.append({'name':'David','age':33})
- print(info)
- 结果:
- ['c#', 'Java', 'Python', 'c++', 21.34, ('a', 'b'), {'name': 'David', 'age': 33}]
2、insert函数
解释:将元素插入到指定位置中
- 例子:
- info = ['c#', 'Java', 'Python']
- info.insert(0,'Ruby')
- info.insert(7,'c++')
- info.insert(4,'Go')
- info.insert(8,333)
- info.insert(5,{'name':'Tom'})
- print(info)
- 结果:
- ['Ruby', 'c#', 'Java', 'Python', 'Go', {'name': 'Tom'}, 'c++', 333]
3、count 函数
解释:查询列表中元素的数量,如果未找到,返回0
添加的元素,可以是任何类型(字符,数值,字典,元组,列表)
- 例子:
- info = ['c#', 'Java', 'Python', 'Go', 'C', 'C#']
- count1 = info.count('c#')
- count2 = info.count('Ruby')
- print('c# 数量 :%s'% count1)
- print('Ruby 数量 :%s' % count2)
- 结果:
- c# 数量 :1
- Ruby 数量 :0
4、remove 函数
解释:删除列表中的某个元素 list.remove(item)
如果删除的元素不存在,程序 会报错
如果删除的元素有多个,只会删除第一个
- 例子:
- info = ['苹果', '香蕉', '梨', '西瓜', '桔子', '西瓜']
- info.remove('苹果')
- info.remove('西瓜')
- print(info)
- 结果:
- ['香蕉', '梨', '桔子', '西瓜']
5、reverse函数
解释:列表数据顺序反转
- 例子:
- info = ['苹果', '香蕉', '梨', '西瓜', '桔子']
- info.reverse()
- print(info)
- 结果:
- ['桔子', '西瓜', '梨', '香蕉', '苹果']
6、sort函数
解释:
使用sort,列表中的元素必须 是相同类型,如果是不同类型,程序出错
- 例子:
- info = ['Python','C#', 'Java','Ruby']
- info.sort()
- print(info)
- info.reverse()
- print(info)
- 结果:
- ['C#', 'Java', 'Python', 'Ruby']
- ['Ruby', 'Python', 'Java', 'C#']
7、clear函数
解释:清空列表
- 例子:
- info = ['Python','C#', 'Java','Ruby']
- info.clear()
- print(info)
-
- 结果:
- []
8、copy函数
解释:浅拷贝,是指在第一层不受到影响
copy与二次赋值的区别,二次赋值 是使用相同的内存空间,而copy函数创建的新列表与原列表不是同一个内存空间
- 例子:二次赋值与copy区别
- a = [1, 2]
- b = a
- a.append(3)
- c = a.copy()
- c.append(4)
- print('a={}'.format(a))
- print('b={}'.format(b))
- print('c={}'.format(c))
-
- 结果:
- a=[1, 2, 3]
- b=[1, 2, 3]
- c=[1, 2, 3, 4]
- 例子:浅拷贝 因为是浅拷贝所以,只对第一层不受影响
- 对第一层用append时,b使用append时,a并未改变.对第二层b[0]操作时,使用 append时,操作b,a改变
- a = [[1,2],[3,4]]
- b =a.copy()
- b.append([6,7])
- b[0].append(5)
- print(a)
- print(b)
- 结果:
- [[1, 2, 5], [3, 4]]
- [[1, 2, 5], [3, 4], [6, 7]]
深拷贝:deepcopy
对于深层复制时,需要使用deepcopy
- 例子:
- a = [[1, 2], [3, 4]]
- b = copy.deepcopy(a)
- b[0].append([5, 6])
- print(a)
- print(b)
- 结果:
- [[1, 2], [3, 4]]
- [[1, 2, [5, 6]], [3, 4]]
9、extend 函数
解释:
把一个列表的数据,放到当前列表中
- 例子:
- list1= ['a','b','c']
- list2= ['d','e']
- list1.extend(list2)
- print(list1)
- 结果:
- ['a', 'b', 'c', 'd', 'e']