python数据结构
列表、元组、字典、集合
-------------------------------列表与元组-------------------------------
1.已知列表num1=[4,5,2,7]和num2=[3,6],要求编写程序将这两个列表合并为一个列表,将合并后的元素按照从大到小排序。另外,已知元组tur1=(‘p’,’y’,’t’,[‘o’,’n’]),向元组的最后一个列表前添加新元素’h’。
※列表有增加(append、extend、insert),删除(pop、remove、del),排序sort等方法。append()和extend()的区别在于:L1.append(L2)是将L2看成是一个对象,整体打包到L1中的末尾;L1.extend(L2)是将L2中所有元素依次添加到L1的末尾。
♥列表是可变的,元组是不可变的。元组一旦创建完成之后,不能对元素修改。
num1=[4,5,2,7]
num2=[3,6]
num1.extend(num2)
num1.sort(reverse=True)#列表中sort方法默认是升序,通过reverse=True设置为逆序即降序
print("输出:",num1)
tur1=('p','y','t',['o','n'])
#因无法对元组中的元素修改,可以通过list函数把元组转换为列表,在列表中添加元素
list1=list(tur1)
list1.insert(3,'h')
tur2=tuple(list1)#通过tuple函数把列表转换为元组
print(tur2)
2.在某比赛中,共有5位评委给选手打分。计算选手得分时,去掉最高分与最低分,然后求其平均值,该值就是选手的得分。
total_score=[] #创建一个空列表,用于存储5个评委的打分
for i in range(5):
score=float(input(f"请输入第{
i+1}位选手的评分:"))
total_score.append(score)#把每个评委输入的分数都存到列表中
max_score=max(total_score)#找到列表中的最大值
min_score=min(total_score)#找到列表中的最小值
#remove方法用于删除某个元素
total_score.remove(max_score)
total_score.remove(min_score)
print(total_score)
#sum函数用于计算列表中所以元素的总和,len函数计算列表的长度
avg=sum(total_score)/len(total_score)
print("选手的最终得分是:{:.2f}".format(avg))
3.matrix = [ [1, 3, 5], [2, 6, 8], [7, 9, 4]],要求通过代码将该矩阵进行转置。转置后的矩阵为[[1, 2, 7], [3, 6, 9], [5, 8, 4]]
matrix=[[1,3,5],[2,6,8],[7,