python字典问题
本帖最后由 入侵龙渊 于 2021-3-19 15:39 编辑scores_new = {'学生1':,'学生2':,'学生3':,
'学生4':,'学生5':,'学生6':}
计算所有学生语文平均分和数学平均分
按照姓名,将所有学生的语文成绩存入scores_Chinese字典中,将所有学生的数学成绩存入scores_Maths字典中
两个都需要用for循环 bobcheng 发表于 2021-3-19 15:23
用for遍历两遍就可以了
能发一下代码吗?属实想不明白 循环一遍就可以,循环时候取各科成绩到对应字典中,并计数,循环后就能计算平均成绩了 zheng10072 发表于 2021-3-19 15:27
循环一遍就可以,循环时候取各科成绩到对应字典中,并计数,循环后就能计算平均成绩了
count = 0
for k in scores_new:
if k.startswith("学生"):
count = count + 1
print(count)
for k in scores_new:
chinese = sum(scores_new)
math = sum(scores_new)
print(chinese/count)
这么写对吗? 本帖最后由 521105 于 2021-3-19 16:18 编辑
import numpy as np
scores_new = {'学生1':,'学生2':,'学生3':,
'学生4':,'学生5':,'学生6':}
Chinese = np.mean( for i in scores_new]) #语文平均分数
Math = np.mean( for i in scores_new])
scores_Chinese = {i : j for i,j in zip(scores_new, for i in scores_new.values()])} #遍历学生名字及语文成绩生成字典
scores_Maths = {i : j for i,j in zip(scores_new, for i in scores_new.values()])} 可以参考一下 入侵龙渊 发表于 2021-3-19 15:31
count = 0
for k in scores_new:
if k.startswith("学生"):
对不对代码跑跑就知道了,要学会自己排错学习起来才快 阿伟de大长腿 发表于 2021-3-19 15:37
可以参考一下
十分感谢 scores_new = {'学生1':,'学生2':,'学生3':,
'学生4':,'学生5':,'学生6':}
scores_Chinese = dict()
scores_Maths = dict()
for k,v in scores_new.items():
print(k,v)
scores_Chinese.setdefault(k, v)
scores_Maths.setdefault(k, v)
print('语文平均分:', sum(scores_Chinese.values()) / len(scores_Chinese))
print('数学平均分:', sum(scores_Maths.values()) / len(scores_Maths))
页:
[1]
2