——列表的常规操作方法

不可否认,在Python中,对列表元素的操作非常重要,其中常规操作方法主要有以下几种:

list()

list()可以用来将字串转换为字符列表

tempstr = list(‘stts’)
print(tempstr)

运行结果:['s', 't', 't', 's']

给列表赋值

tempstr[2] = ‘u’
print(tempstr)

运行结果:['s', 't', 'u', 's']

删除元素

del tempstr[3]
print(tempstr)
print(len(tempstr))

运行结果:['s', 't', 'u'],3

切片式赋值

tempstr[2:] = list(‘sc’)
print(tempstr)
print(len(tempstr))

运行结果:['s', 't', 's', 'c'],4

tempstr[-1:] = list(‘sc’)
print(tempstr)
print(len(tempstr))

运行结果:['s', 't', 's', 's', 'c'],5

tempstr[:] = list(‘stus’)
print(tempstr)
print(len(tempstr))

运行结果:['s', 't', 'u', 's'],4

append()追加记录。

tempstr.append(‘c’)
print(tempstr)

运行结果:['s', 't', 'u', 's', 'c']

clear(),清空列表内容

tempstr.clear()
print(len(tempstr))

运行结果:0

好像切片全部赋空值也能实现同样效果:tempstr[:] = []

列表名称关联

下面这种操作就是将tempstr2这个列名与tempstr这个列名相关联,即同一堆栈有两个名称,操作任何一个列表名,另外一个同时发生变化。

tempstr2 = tempstr
tempstr2[:] = list(‘stusc’)
print(‘tempstr列表的内容为:’ + str(tempstr))

运行结果:tempstr列表的内容为:['s', 't', 'u', 's', 'c']

print(‘tempstr2列表的内容为:’ + str(tempstr2))

运行结果:tempstr2列表的内容为:['s', 't', 'u', 's', 'c']

copy()列表复制

使用copy()对列表进行复制,使其指向两个不同的栈。

tempstr2 = tempstr.copy()
del tempstr2[-1]
print(‘tempstr列表的内容为:’ + str(tempstr))

运行结果:tempstr列表的内容为:['s', 't', 'u', 's', 'c']

print(‘tempstr2列表的内容为:’ + str(tempstr2))

运行结果:tempstr2列表的内容为:['s', 't', 'u', 's']

count()元素计数

count()返回的是个int值。PS:可以通过str()将int类型转换为string型

hm = tempstr.count(‘s’)
print(“‘s’这个元素在tempstr这个列表中总共出现了” + str(hm) +’次’)

运行结果:'s'这个元素在tempstr这个列表中总共出现了2次

extend()数据追加

tempstr2.extend(tempstr)
print(‘tempstr2后面追加tempstr后的结果为:’ + str(tempstr2))

运行结果:tempstr2后面追加tempstr后的结果为:['s', 't', 'u', 's', 's', 't', 'u', 's', 'c']

index()索引

索引某一元素在列表中第一次出现的位置

hm = tempstr2.index(‘u’)
print(“字符’u’在tempstr2中首次出现的位置为” + str(hm) + ‘号位’)

运行结果:字符'u'在tempstr2中首次出现的位置为2号位

insert(int,val)插入元素

在列表中指定位置插入一个元素。

tempstr2.insert(4,’c’)
print(“在tempstr2中4号位上插入c后的结果为:” + str(tempstr2))

运行结果:在tempstr2中4号位上插入c后的结果为:['s', 't', 'u', 's', 'c', 's', 't', 'u', 's', 'c']

pop()删除元素

pop(int)从指定列表中删出某个元素(int为空时默认删除最后一个),并返回该元素值。PS:据说pop()是唯一一个带返回的列表操作方法。

print(“在tempstr2中删除最后一个元素” + str(tempstr2.pop()) +”的结果为:” + str(tempstr2))

运行结果:在tempstr2中删除最后一个元素c的结果为:['s', 't', 'u', 's', 'c', 's', 't', 'u', 's']

print(“在tempstr2中删除第3个元素” + str(tempstr2.pop(3)) +”的结果为:” + str(tempstr2))

运行结果:在tempstr2中删除第3个元素s的结果为:['s', 't', 'u', 'c', 's', 't', 'u', 's']

remove(val)

从指定列表中删除首次出现的指定元素。

tempstr2.remove(‘s’)
print(“在tempstr2中首次删除’s’元素后的结果为:” + str(tempstr2))

运行结果:在tempstr2中首次删除's'元素后的结果为:['t', 'u', 'c', 's', 't', 'u', 's']

tempstr2.remove(‘s’)
print(“在tempstr2中再次删除’s’元素后的结果为:” + str(tempstr2))

运行结果:在tempstr2中再次删除's'元素后的结果为:['t', 'u', 'c', 't', 'u', 's']

reverse()反向排序

将指定列表内的元素反向排序。

tempstr2.reverse()
print(‘tempstr2列表内元素使用reverse()进行反序后的结果为:’ + str(tempstr2))

运行结果:tempstr2列表内元素使用reverse()进行反序后的结果为:['s', 'u', 't', 'c', 'u', 't']

sort()元素排序

将指定列表内的元素进行自动排序。

tempstr2.sort()
print(‘tempstr2列表内元素使用sort()进行排序后的结果为:’ + str(tempstr2))

运行结果:tempstr2列表内元素使用sort()进行排序后的结果为:['c', 's', 't', 't', 'u', 'u']

方法sort接受两个可选参数:key和reverse。这两个参数通常是按名称指定的,称为关键字参数,将在第6章详细讨论。参数key类似于参数cmp:你将其设置为一个用于排序的函数。然而,不会直接使用这个函数来判断一个元素是否比另一个元素小,而是使用它来为每个元素创建一个键,再根据这些键对元素进行排序。因此,要根据长度对元素进行排序,可将参数key设置为函数len。

tempstr2.sort(key=len)
print(‘tempstr2列表内元素使用sort(key=len)进行排序后的结果为:’ + str(tempstr2))

运行结果:tempstr2列表内元素使用sort(key=len)进行排序后的结果为:['c', 's', 't', 't', 'u', 'u']

tempstr2.sort(reverse=True)
print(‘tempstr2列表内元素使用sort(reverse=Ture)进行排序后的结果为:’ + str(tempstr2))

运行结果:tempstr2列表内元素使用sort(reverse=Ture)进行排序后的结果为:['u', 'u', 't', 't', 's', 'c']

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注