列表的函数
这篇是对列表的操作函数
列表还记得吗?用中括号,括起来的元素 []
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']