python3列表(元组)练习


列表和元组一起练习
l = [] 或者 li = list() 列表表示
t = () 元组表示,元组不能修改,元组中只有两个方法 count()、index(),同列表相同

li = [11,22,33,44,11,33,] #最后最好跟一个逗号,什么原因跟不知道
l = li.count(11) #count是统计指定元素在列表中出现的次数并返回这个数。若指定的元素不存在则返回:0。
y = li.count('wcj') #指定不存在的元素
print(l) #结果验证为2个
print(y) #结果为0

#index查找并返回指定元素的索引位置,若指定的元素不存在则会抛出异常,可以指定范围查找。
li = [11,22,33,11,33,'wcj','lucky',]
w = li.index(33)
z = li.index(11,0,4) #查找11元素下标,从0开始找,4结束,只找第一个
e = li.index('yy')
print(w) #返回值为2,返回的是索引的下标,默认从0数
print(z) #返回值为0
print(e) #会报错

#pop移除列表中一个指定元素。括号中必须写被移除元素的索引位置,并返回这个被移除的元素,括号中不写则默认移除列表中最后一个元素
li = [11,3,11,33,'wcj','lucky',1212,]
r = li.pop()
print(li) #结果是[11, 11, 33, 'wcj', 'lucky'],默认拿走最后一个
print(r) #将拿走的结果给r,r为1212
li.pop(1) #移除指定的下标,移除元素下标1
li.pop(112) #移除指定的下标,移除元素下标112,这里没有这个下标,会报错
print(li) #结果是[11, 11, 33, 'wcj', 'lucky']

#remove移除列表中一个指定的元素,返回值为None,括号中必须指定元素名,否则抛出异常。移除一个不存在列表中的元素也会抛出异常。
li = [11,3,11,33,'wcj','lucky',1212,]
li.remove(11) #结果是[3, 11, 33, 'wcj', 'lucky', 1212],只删除元素靠前的一个
print(li)
li.remove('wwww') #移除不存在的元素,会报错

#insert()将要插入的元素插入至列表中指定的索引位置处,返回值为None。
li = [11,3,11,33,'wcj','lucky',1212,]
r = li.insert(2,'www') #在指定下标位置插入一个元素
print(li) #结果是[11, 3, 'www', 11, 33, 'wcj', 'lucky', 1212]
print(r) #返回值为None

#append()在列表中的末尾处添加指定的元素,返回值为None。
li = [11,3,11,33,'wcj','lucky',1212,]
r = li.append('good')
print(li) #结果是[11, 3, 11, 33, 'wcj', 'lucky', 1212, 'good']
print(r) #返回值为None

#clear()清空列表中所有的元素,返回值为None
li = [11,3,11,33,'wcj','lucky',1212,]
r = li.clear()
print(li) #结果是[]
print(r) #返回值为None

#copy()拷贝列表,并返回一个浅拷贝后的新列表
li = [11,3,11,33,'wcj','lucky',1212,]
r = li.copy()
print(li) #结果是[11, 3, 11, 33, 'wcj', 'lucky', 1212]
print(r) #结果是[11, 3, 11, 33, 'wcj', 'lucky', 1212]
import copy #导入copy模块方法
dic = {'k1':[11,22,33,],'k2':'good'}
r = copy.copy(dic) #浅拷贝
z = copy.deepcopy(dic) #深拷贝,存在内存中的地址不一样

#extend()扩展列表。在原列表中末尾处追加一个序列,该序列中的所有元素都会被添加至原列表末尾。返回值为None
li = [11,3,11,33,'wcj','lucky',1212,]
t = (88,00,99,)
s = ['rm','love'] #同样可以扩展
r = li.extend(t)
print(li) #结果是[11, 3, 11, 33, 'wcj', 'lucky', 1212, 88, 0, 99]
print(r) #返回值为None

#reverse()反向列表中的元素,返回值为None。
li = [11,3,11,33,'wcj','lucky',1212,]
r = li.reverse()
print(li) #结果是[1212, 'lucky', 'wcj', 33, 11, 3, 11]
print(r) #返回值为None

#sort()对列表进行排序,返回值为None。
#格式:[列表].sort(key = 过程总调用函数,reverse = 布尔值),默认key = None,默认reverse = False
li = [11,3,11,33,66,77,99,1212,] #排序只能是数字或者只能是字符串,数字+字符串会报错
l = ['wcj','lucky','good',]
r = li.sort()
z = l.sort()
print(li,l) #结果是[3, 11, 11, 33, 66, 77, 99, 1212]['good', 'lucky', 'wcj']
print(r) #返回值为None
#s = l.sort(key=len) #结果是['wcj', 'good', 'lucky']
y = l.sort(key=len,reverse=True) #结果是['lucky', 'good', 'wcj']
print(l)


猜你喜欢

转载自www.cnblogs.com/jkl1221/p/10708171.html