组合数据
(1)问题分析(含解决思路、使用的数据结构、程序流程图等)
首先:得定义两个列表;
其次:使用两种方法合并,方法一:直接list1+list2;方法二:使用list.extend(list2),在列表末尾添加迭代对象list2中的所有元素作为列表新元素;
最后:输出结果。
(2)算法/代码描述(基本要求源代码)
list1 = [1, 2, 3.5, '小孙']
list2 = [4, 5.6, '小志']
print("list1:", list1)
print("list2:", list2)
list = list1 + list2
print("合并后的列表为:", list)
list1.extend(list2)
print("合并后的列表为:", list1)
(3)运行结果(含执行结果验证、输出显示信息)
(1)问题分析(含解决思路、使用的数据结构、程序流程图等)
首先:要实现插入元素的操作,需要先定义这两个集合;
其次:(1)向集合中添加一个元素,使用set1.add(7);
(2)实现并集,set1.union(set2);
(3)实现交集,set1.intersection(set2);
(4)实现差集,set1. difference(set2);
(5)判断key是否在set中,item in set;
最后:输出结果。
(2)算法/代码描述(基本要求源代码)
set1 = {2, 5, 9, 1, 3}
set2 = {3, 6, 8, 2, 5}
set1.add(7)
print("向set1插入7以后的set1:", set1)
print("set1和set2并集为:", set1.union(set2))
print("set1和set2交集为:", set1.intersection(set2))
print("set1和set2差集为:", set1. difference(set2))
print(4 in set1.union(set2))
(3)运行结果(含执行结果验证、输出显示信息)
(1)问题分析(含解决思路、使用的数据结构、程序流程图等)
首先:创建一个字典,dict1 = {"01": "89"}print("创建的一个字典为:", dict1);
其次:
(1)添加学生成绩,dict1["02"] = "90",print("添加一个学生后的字典为:", dict1);
(2)修改01号学生成绩,dict1["01"] = "77"print("修改01号的学生的字典之后:", dict1)
(3)删除01号学生成绩,del dict1["01"]print("删除01号的学生的字 典之后:", dict1)
(4)查询指定学生的成绩,print("查询学号02的学生成绩", dict1["02"])
然后:统计学生个数,计算最高分和最低分;
最后:输出结果。
(2)算法/代码描述(基本要求源代码)
print("1.添加学生成绩")
print("2.修改指定学生成绩")
print("3.删除指定学生成绩")
print("4.查询指定学生成绩")
print("5.统计最高分、最低分、平均分")
dict1 = [{"学号":"01","成绩":89}]
while True:
SN = int(input("请输入操作数:"))
if SN in [1, 2, 3, 4, 5]:
if SN == 1:
search = False
学号 = input("请输入学号:")
for i in dict1:
if 学号 == i["学号"]:
print("该学号已存在")
search =True
if search == False:
成绩 = int(input("请输入成绩:"))
newdict1 = {}
newdict1["学号"] = 学号
newdict1["成绩"] = 成绩
dict1.append(newdict1)
elif SN == 2:
学号 = input("清输入要修改的学生学号:")
flag = False
for i in dict1:
if 学号 == i["学号"]:
flag = True
i["成绩"]=int(input("请输入成绩:"))
if flag == False:
print("该学号不存在")
elif SN == 3:
学号 = input("清输入要删除的学生学号:")
flag = False
for i in dict1:
if 学号 == i["学号"]:
flag = True
dict1.remove(i)
if flag:
print("删除成功")
else:
print("该学号不存在")
elif SN == 4:
学号 = input("清输入要查询的学生学号:")
flag = False
for i in dict1:
if 学号 == i["学号"]:
flag = True
print("学号:%s,成绩:%d"%(i["学号"],i["成绩"]))
if flag == False:
print("该学号不存在")
elif SN == 5:
sum = 0
a = 0
b = 100
c = 0
for i in dict1:
sum = sum+i["成绩"]
if a & i["成绩"]:
a = i["成绩"]
if b & i["成绩"]:
b = i["成绩"]
c = c +1
print("平均分:", sum/c)
print("最高分:", a)
print("最低分:", b)
else:
print("操作数错误,请重新输入操作数")
print("1.添加学生成绩")
print("2.修改指定学生成绩")
print("3.删除指定学生成绩")
print("4.查询指定学生成绩")
print("5.统计最高分、最低分、平均分")
(3)运行结果(含执行结果验证、输出显示信息)
(1)print(list2.extend(list1))输不出结果;
(2)set1. union(set2)
Print(set1)输不出结果;
(1)写成list2.extend(list1)
Print(list2)就输出结果啦;
(2)写成print(set1.union(set2))就可以啦;
在这次实验中,刚开始有点没有太理解题意,以为是要单独实现每个步骤,在实现对成绩平均值的时候,使用一些语句去使功能实现,慢慢去调整代码,可以使自己获得更快的能力提高。