5.作业的描述
李白是一个社区大学的老师,一天,他让学生小明计算一下温室里植物的平均高度。(注意,身高是不可以重复的)
求:平均高度 = 不同高度的和 / 不同高度的数量
def average(array):
set1 = set(array)# 将重复元素删除
num = len(set1)# 计算初数量的总数
Sum = 0
for i in set1:# 循环计算出总数
Sum+=i
return f"{(Sum / num):.3f}"
#你的代码写在这里list里面现在是整形的元素
if __name__ == '__main__':
arr = list(map(int, input().split())) # map()函数用于将列表中的每个元素都转换为整数
result = average(arr)
print(result)
我们所要填写的是函数average里面的内容,这个函数的组要作用就是计算出平均高度
描述:因为是不可以重复的所以我们先可以用集合将列表转换一下,,在计算出集合的数量就是计算出物体的高度总数,在通过for循环将高度相加除以num就可以了
6.作业的描述
文件中包含有2018和2019手机销售榜单数据(市场份额百分数),请根据要求升序输出分析结果:
with open('step7/sale2019.csv', 'r', encoding='utf-8') as data2019:
sale2019 = [[line.strip().split(',')[0], float(line.strip().split(',')[1])] for line in data2019]
with open('step7/sale2018.csv', 'r', encoding='utf-8') as data2018:
sale2018 = [[line.strip().split(',')[0], float(line.strip().split(',')[1])] for line in data2018]
set2019 = set([x[0] for x in sale2019])
set2018 = set([x[0] for x in sale2018])
select = input()
if select == '1':
print(sorted(set2019),sorted(set2018),sep='\n')
elif select == '2':
print(sorted(list(set2019&set2018)))
elif select == '3':
print(sorted(list(set2019|set2018)))
elif select == '4':
print(sorted(list(set2019-set2018)))
elif select == '5':
print(sorted(list(set2019^set2018)))
7.作业的描述
应用你的知识帮助你的好朋友小明,小明喜欢集邮,他有大量的来自不同国家的邮票,他决定数一下他的集邮册中共有来自多少个不同国家的邮票,他请你帮忙,你一个一个的把N张邮票拿出来,找出共有多少个不重复的国家。
第一行输入一个整数N,表示所有邮票的数目 接下来的N行,每行输入一张邮票来自哪一个国家的名字 在一行中输出不重复的国家的数量
# 接下来的N行,每行输入一张邮票来自哪一个国家的名字
N = int(input())# 输入邮票的总数
list1 = []# 输入国家的名称
for i in range(N):
a = input()
list1.append(a)
set1 = set(list1)
print(len(set1))
通过循环将你要输入的国家信息存入列表中,通过set将列表强制转换输出即可set(可以取出重复的数据)
8.作业的描述
第一行输入一个正整数 N,随后的N 行各输入一个人的姓名和年龄,中间用空格分隔(形如 “Tom 18” ),将字符串转为形如 {"name":"Tom","age":18} 的字典,按顺序加入到列表中,得到一个元素为字典的列表,分别根据年龄和姓名对其排序输出。
n=int(input())# 输入人数的总数
d={}# 定义一个空的字典,用来存放人的数据
ls= []# 定义一个列表来存放数据
a = {}# 用来存放输入的数据
for i in range (n):# 通过循环来输入人的基本信息
a[i]=input().split()
d["name"] = a[i][0]# 姓名
d["age"] = int(a[i][1])# 年龄
ls.append(d.copy()) # 将个人的数据存放进入列表中
def cmp1(a):
return a['age'] #返回字典的年龄
def cmp2(a):
return a['name']# 返回字典的姓名
ls.sort(key = cmp1)# 排序的过程
print(ls)
ls.sort(key = cmp2)
print(ls)
这一段代码是抄的别人的(注释是自己添加的将就看一看)
9.作业的描述
不做了