列表操作符 | 操作符含义 |
---|---|
< list1 >+< list2 > | 连接两个列表 |
< list >*<整数类型> | 对列表进行整数次重复 |
< list >[<整数类型>] | 索引列表中的元素 |
len(< seq >) | 列表中元素的个数 |
< list >[<整数类型>:<整数类型>] | 取列表的一个子序列 |
for< var > in < list >: | 对列表进行循环列举 |
< expr > in < list > | 成员检查,判断< expr >是否在列表中 |
>>>vlist=[0,1,2,3,4]
>>>vlist*2
[0,1,2,3,4,0,1,2,3,4]
>>>len(vlist[2:])
3
>>>for i in vlist[:3]:
print(i)
0
1
2
>>>2 in vlist
True
方法 | 说明 |
---|---|
append(x) | 将x追加至列表尾部 |
extend(L) | 将列表L中所有元素追加至列表尾部 |
insert(index,x) | 在列表index位置处插入x,该位置后面的所有元素后移,如果index为正数且大于列表长度则在列表尾部追加x |
remove(x) | 在列表中删除第一个值为x的元素,该元素之后所有元素前移并且索引减1,如果列表中不存在x则抛出异常 |
clear() | 清空列表,删除列表中所有元素,保留列表对象 |
index(x) | 返回列表中第一个值为x的元素的索引,若不存在值为x的元素则抛出异常 |
count(x) | 返回x在列表中出现的次数 |
reverse() | 对列表所有元素进行原地逆序,首尾交换 |
sort(key=None,reverse=False) | 对列表中的元素进行原地排序,key用来指定排序规则,reverse为False表示升序,Ture表示降序 |
>>>ls2=[1,2,3]
>>>ls2.append('abc')
>>>ls2
[1,2,3,'abc']
>>>ls2.append(['a',3.14])
>>>ls2
[1,2,3,'abc',['a',3.14]]
#注意:被追加的元素在列表中保持着原结构类型,而且一次只能追加一个元素
>>>ls3=[1,2,3,4]
>>>ls3.extend([5,'abc'])
>>>ls3
[1,2,3,4,5,'abc']
>>>ls3.extend('python')
>>>ls3
[1,2,3,4,5,'abc','p','y','t','h','o','n']
#注意:extend()方法是将列表中的元素分解后添加至原列表内,相当于扩展了原列表,实现效果类似字符串的连接操作
>>>ls4=['data',123,10.5]
>>>ls4.insert(0,2020)
>>>ls4
[2020,'data',123,10.5]
>>>ls4.insert(2,['python',12])
>>>ls4
[2020,'data',['python',12],123,10.5]
>>>colors=['red','bule','green','purple','bule']
>>>colors.remove('bule') #删除元素值为'bule'的第一个匹配项
>>>colors
['red','green','purple','bule']
>>>colors.clear() #清空列表colors中的所有元素
>>>colors
[]
remove()方法只会删除第一个指定的值。如果需要删除多个指定的值,那么就需要使用循环来实现。
#pop()--取出并将取出的值赋给另外一个变量
name=["xiaowu","litte-five","James"]
special_name=name.pop(1)
print(name)
print(special_name)
#输出为:['xiaowu',James']
# little-five
>>>mlist=[1,2,3,4,5]
>>>mlist='python' #修改索引3的元素值和类型
>>>mlist
[1,2,3,'python',5] #修改后的列表内容
>>>mlist[1:3]=['funny',3.14]
>>>mlist
[1,'funny',3.14,'python',5]
#遵循"多增少减"的原则
>>>mlist[1:3]=['more',2.56,'new']
>>>mlist
[1,'more',2.56,'new','python',5]
>>>mlist[1:3]=['fewer']
>>>mlist
[1,'fewer','new','python',5]
#列表元素减少,值为2.56的元素被删除了
#正序
num=[11,55,88,66,35,42]
print(sorted(num)) #=>数字排序
#输出为:[11,35,42,55,66,88]
#倒序num列表内容没排序
print(sorted(num,reverse=Ture))
#输出为:[88,66,55,42,35,11]
>>>num.sort(reverse=Ture)
>>>num #num列表内容排序了
[88,66,55,42,35,11]
已知某班某门课程期末考试学生人数和按学号排列的成绩,完成成绩输入,修改,插入,删除,查询,求平均值,排序等基本操作。
#定义输入学生人数和输入每个同学成绩函数
def getscore():
n=int(input("请输入学生人数:")) #学生人数转换为整数
score=[] #定义列表
for i in range(n):
x=int(input('输入学生成绩:')) #输入一个学生成绩
score.append(x) #在列表score的末尾附加x元素
return score #返回成绩列表
getscore()
#调用该函数运行结果:
#请输入学生人数:3
#输入学生成绩:60
#输入学生成绩:90
#输入学生成绩:70
def printscore(scores): #输出每个同学序号及成绩函数
for i in range(len(scores))
print("序号:{} 成绩:{}".format(i+1,scores[i])
def avgscore(scores): #定义平均成绩函数
s=0.0
for x in scores: #对列表中每个数遍历加和到s中
s=s+x
return s/len(score)
#或
def avgscore(score): #定义平均成绩函数
#sum(scores)返回列表中所有元素之和
return sum(scores)/len(scores)
#在第3个同学成绩前插入一个学生成绩85
x=85
i=2
scores.insert(i,x)
#将第3个同学成绩改为95
x=95
i=2
scores[i]=x #将列表scores的i位置的值改为x
#将成绩为95的同学删除
x=95
score.remove(x) #在列表scores删除值为x的元素
printscore(scores) #调用函数输出每个同学序号及成绩
#调用函数输入学生人数和每个同学成绩
scores=getscore()
avg=avgscore(scores) #调用平均成绩函数
print("AVG={},MAX={},MIN=:{}".format(avg,max(scores),min(scores)) #输入平均分、最高分和最低分
#代码解析:
#max(scores) 返回列表中最大的元素
#min(scores) 返回列表中最小的元素
scores=getscore() #输入学生人数和每个同学成绩
printscore(scores) #输出每个同学序号及成绩
x=85
i=score.index(x) #返回x在scores列表中第一次出现的下标
print("序号:{} 成绩:{}".format(i+1,scores[i])
scores=getscore() #调用函数输入学生和每个同学成绩
printscore(scores) #调用函数输出每个同学序号及成绩
print(sorted(scores)) #按升序输出scores中元素
scores.sort(reverse=Ture) #对scores中元素按降序排序
printscore(scores)
scores1=getscore() #输入1班学生人数和每个同学成绩
printscore(scores1) #输出1班每个同学序号及成绩
scores2=getscore()
scores1.extend(scores2) #在列表scores1的末尾添加列表scores2所有元素
#score1+=score2 与上行功能相同
printscore(score1) #输出2个班每个同学序号及成绩
#存放了5户居民一年的用水数据
>>>L7=[['黄晓明','东川路156弄3号504室','0000359222',772,789,806,847,880,901,950,991,1022,1043,1064,1089,1114],
['李红','东川路156弄3号101室','0000359201',121,132,145,156,168,179,192,206,219,,230,246,258,273],
['钱多多','东川路156弄3号102室','0000359202',1008,1046,1102,1167,1209,1255,1311,1362,1407,1453,1512,1563,1604],
['赵志荣','东川路156弄3号103室','0000359203',541,567,590,,622,651,689,701,732,758,775,796,814,847],
['秦天君','东川路156弄3号104室','0000359204',401,412,441,466,479,508,522,541,572,603,637,666]]
>>>L7[0]
['黄晓明','东川路156弄3号504室','0000359222',772,789,806,847,880,901,950,991,1022,1043,1064,1089,1114]
>>>L7[0][0:2]
['黄晓明','东川路156弄3号504室']
>>for i in range(len(L7)):
print(L7[i][0])
黄晓明
李红
钱多多
赵志荣
秦天君
>>>L7[2][0]
'钱多多'
知识点整理不易,如果对你有帮助,给个免费的赞支持一下吧!