本次实验解题逻辑基本合理,内容基本完整
1.掌握:Python常用内置对象-列表、元组、字典、集合。
2.掌握运算符和内置函数对列表、元组、字典、集合的操作。
3.理解列表推导式、生成器表达式的工作原理。
4.掌握切片操作。
5.掌握序列解包的用法。
1.编写程序,用一个变量存储以下信息:学号,姓名,所在学院,专业名称。
2.编写程序,用一个变量存储你所在小组的组员名单。
3.对组员名单进行操作,如增加一个同学,减少一个同学,修改一个同学的姓名。
4.编写程序,录入小组成员的姓氏,利用集合输出小组中的所有姓氏。
5.编写程序,用一个变量存储组员名单,组员Python成绩,计算组员总人数,总分,平均分。
6.编写程序,用一个变量存储组员成绩,要求有低于60的成绩,利用列表推导式,筛选出低于60分的成绩。
7.编写程序,利用列表推导式将列表中的整数提取出来[123, 'hello', (1,2), 456, {23}, {'a':789}]
8.利用生成器表达式生成0~9的数值,要求每一个数值乘以你的幸运数字,最后将生成器对象转换成列表,输出列表的结果。
9.给定一个列表member0 = ["今天","天气","真好"],要求通过insert()insert()方法和切片两种方案,把列表member0变成member1 = ["今天","的","天气","是","真好","呀"]
10.现有一购物车列表如下:
carts=[{"name":"床", "price":1999, "num":1}, {"name":"枕头", "price":10,"num":2}, {"name":"被子", "price":20, "num":1}]
copy
要求通过用户输入总资产,例如:30003000,然后显示购物车列表,计算购物车商品总金额,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
1.编写程序,用一个变量存储以下信息:学号,姓名,所在学院,专业名称。
代码:
a_dict= {'姓名':'曹涵晶','学号':'20222501062','所在学院':'软件学院','专业名称':'软件工程'}
print(a_dict)
for item in a_dict.items():
print(item)
copy
运行结果:
2.编写程序,用一个变量存储你所在小组的组员名单。
代码:
a_dict= {'1号':'王馨竹','2号':'柯思莹','3号':'邓思雨','4号':'曹涵晶','5号':'贾德拉'}
print(a_dict)
for item in a_dict.items():
print(item)
copy
运行结果:
3.对组员名单进行操作,如增加一个同学,减少一个同学,修改一个同学的姓名。
代码:
a_dict= {'1号':'王馨竹','2号':'柯思莹','3号':'邓思雨','4号':'曹涵晶','5号':'贾德拉'}
print(a_dict)
for item in a_dict.items():
print(item)
a_dict['5号']='Smith'#增加一个同学
print(a_dict)
a_dict['3号'] = 'Maya' #修改一个同学
print(a_dict)
a_dict.pop('3号')
print(a_dict)#删除一个同学
copy
运行结果:
4.编写程序,录入小组成员的姓氏,利用集合输出小组中的所有姓名。
代码:
a_list=['王馨竹','邓思雨','曹涵晶','胡可','柯思莹','贾德拉']
print(a_list)
b_dict={'王':'王馨竹','邓':'邓思雨','曹':'曹涵晶','胡':'胡可','柯':'柯思莹','贾':'贾德拉'}
c_set=set(b_dict)
print(c_set)
copy
运行结果:
5.编写程序,用一个变量存储组员名单,组员Python成绩,计算组员总人数,总分,平均分。
代码:
a_dict={'曹涵晶':100,'贾德拉':76,'王馨竹':98,'邓思雨':92,'胡可':67,'柯思莹':88}
print("该组人数为:")
print(len(a_dict))#计算组员总人数
print("该组总分为:")
print(sum(a_dict.values()))#计算总分
a=len(a_dict)
b=(sum(a_dict.values()))
print("该组平均分为:")
print(b/a)#计算平均分
copy
运行结果:
6.编写程序,用一个变量存储组员成绩,要求有低于60的成绩,利用列表推导式,筛选出低于60分的成绩。
代码:
a_list=[60,54,59,88,60,50,63,72,59,60,59,60,61]
b_list=[i for i in a_list if i<60]
print("原来成绩列表:")
print(a_list)
print("低于60的成绩列表:")
print(b_list)
copy
运行结果:
7.编写程序,利用列表推导式将列表中的整数提取出来[123, 'hello', (1,2), 456, {23}, {'a':789}]
代码:
a_list=[123, 'hello', (1,2), 456, {23}, {'a':789}]
print("原列表:")
print(a_list)
print("取整数后的列表:")
b_list=[i for i in a_list if type(i)==int]
print(b_list)
copy
运行结果:
8.利用生成器表达式生成0~9的数值,要求每一个数值乘以你的幸运数字,最后将生成器对象转换成列表,输出列表的结果。
代码:
print("请输入你的幸运数字(0~9之间):")
a=int(input())
b_list=list((i*a for i in range(0,10)))
print("0~9的数值每一个数值乘以你的幸运数字,输出列表的结果为:")
print(b_list)
copy
运行结果:
9.给定一个列表member0 = ["今天","天气","真好"],要求通过insert()insert()方法和切片两种方案,把列表member0变成member1 = ["今天","的","天气","是","真好","呀"]
代码1:
member0=["今天","天气","真好"]
print("改变前列表为:")
print(member0)
member1=member0
member1.insert(1,"的")
member1.insert(3,"是")
member1.insert(5,"呀")
print("改变后列表为:")
print(member1)
copy
运行结果:
代码2:
member0=["今天","天气","真好"]
print("改变前列表为:")
print(member0)
member1=member0
member1[1:]=["的","天气","是","真好"]
member1[len(member1):]=["呀"]
print("通过切片方法改变后列表为:")
print(member1)
copy
运行结果;
10.现有一购物车列表如下:
carts=[{"name":"床", "price":1999, "num":1}, {"name":"枕头", "price":10,"num":2}, {"name":"被子", "price":20, "num":1}]
copy
要求通过用户输入总资产,例如:30003000,然后显示购物车列表,计算购物车商品总金额,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
代码:
carts=[{"name":"床", "price":1999, "num":1}, {"name":"枕头", "price":10,"num":2}, {"name":"被子", "price":20, "num":1}]
print("请输入总资产:")
a=int(input())
print("购物清单为:")
for item in carts[0].items():
print(item)
for item in carts[1].items():
print(item)
for item in carts[2].items():
print(item)
b=carts[0]["price"]*carts[0]["num"]+carts[1]["price"]*carts[1]["num"]+carts[2]["price"]*carts[2]["num"]
print("商品总金额为:")
print(b)
if a>b:
print("可以购买")
else:
print("余额不足")
copy
运行结果:
学习时间 6分钟
操作时间 3分钟
按键次数 1次
实验次数 2次
报告字数 5174字
是否完成 完成