第一节

1 练习

1 设置三个的字典分别为lloyd,alice,tyler

2 对每一个的字典的key都设置为"name","homework" , "quizzes", "tests"

3 每个字典的key为"name"对应的为人的名字,其他key对应的值为空列表

# three dictionaries
lloyd = {"name":"Lloyd" , "homework":[] , "quizzes":[] , "tests":[]}
alice = {"name":"Alice" , "homework":[] , "quizzes":[] , "tests":[]}
tyler = {"name":"Tyler" , "homework":[] , "quizzes":[] , "tests":[]}

第二节

1 练习:把第一个字典lloyd中的三个空列表的值设置对应如下

Homework: 90.0, 97.0, 75.0, 92.0
                    Quizzes: 88.0, 40.0, 94.0
                    Test Scores: 75.0, 90.0

lloyd = {
"name": "Lloyd",
"homework": [90.0, 97.0, 75.0, 92.0],
"quizzes": [88.0, 40.0, 94.0],
"tests": [75.0, 90.0]
}
alice = {
"name": "Alice",
"homework": [100.0, 92.0, 98.0, 100.0],
"quizzes": [82.0, 83.0, 91.0],
"tests": [89.0, 97.0]
}
tyler = {
"name": "Tyler",
"homework": [0.0, 87.0, 75.0, 22.0],
"quizzes": [0.0, 75.0, 78.0],
"tests": [100.0, 100.0]
}

第三节

1 练习:把lloyd , alice , tyler三个字典放到列表students中

lloyd = {
"name": "Lloyd",
"homework": [90.0, 97.0, 75.0, 92.0],
"quizzes": [88.0, 40.0, 94.0],
"tests": [75.0, 90.0]
}
alice = {
"name": "Alice",
"homework": [100.0, 92.0, 98.0, 100.0],
"quizzes": [82.0, 83.0, 91.0],
"tests": [89.0, 97.0]
}
tyler = {
"name": "Tyler",
"homework": [0.0, 87.0, 75.0, 22.0],
"quizzes": [0.0, 75.0, 78.0],
"tests": [100.0, 100.0]
}
# you code here
students = [lloyd , alice , tyler]

第四节

1 练习:按照以下的格式,打印出students列表中的三个字典

Lloyd
[90, 97, 75, 92]
[88, 40, 94]
[75, 90]
lloyd = {
"name": "Lloyd",
"homework": [90.0, 97.0, 75.0, 92.0],
"quizzes": [88.0, 40.0, 94.0],
"tests": [75.0, 90.0]
}
alice = {
"name": "Alice",
"homework": [100.0, 92.0, 98.0, 100.0],
"quizzes": [82.0, 83.0, 91.0],
"tests": [89.0, 97.0]
}
tyler = {
"name": "Tyler",
"homework": [0.0, 87.0, 75.0, 22.0],
"quizzes": [0.0, 75.0, 78.0],
"tests": [100.0, 100.0]
}
# you code here
students = [lloyd , alice , tyler]
# you code hrre
for my_list in students:
for str in my_list:
print my_list[str]

第五节

1 练习

1 对于每一个数字列表,我们可以求其平均值,比如    average([0]) #0.0,average([0,2]) #1.0,average([0,1]) #0.5

2 写一个函数average,参数是列表lst,求其平均值并以float形式输出

lloyd = {
"name": "Lloyd",
"homework": [90.0, 97.0, 75.0, 92.0],
"quizzes": [88.0, 40.0, 94.0],
"tests": [75.0, 90.0]
}
alice = {
"name": "Alice",
"homework": [100.0, 92.0, 98.0, 100.0],
"quizzes": [82.0, 83.0, 91.0],
"tests": [89.0, 97.0]
}
tyler = {
"name": "Tyler",
"homework": [0.0, 87.0, 75.0, 22.0],
"quizzes": [0.0, 75.0, 78.0],
"tests": [100.0, 100.0]
} # Add your function below!
def average(lst):
sum = 0
for num in lst:
sum = sum+num
return float(sum)/len(lst)

第六节

1 介绍了我们经常需要去求很多数的平均值,比如80 * 0.4 + 86 * 0.6

2 练习:写一个函数get_average,参数是一个学生字典,使用如下比例Homework  10%, quizzes 30% tests60%算出这个学生的平均得分

lloyd = {
"name": "Lloyd",
"homework": [90.0, 97.0, 75.0, 92.0],
"quizzes": [88.0, 40.0, 94.0],
"tests": [75.0, 90.0]
}
alice = {
"name": "Alice",
"homework": [100.0, 92.0, 98.0, 100.0],
"quizzes": [82.0, 83.0, 91.0],
"tests": [89.0, 97.0]
}
tyler = {
"name": "Tyler",
"homework": [0.0, 87.0, 75.0, 22.0],
"quizzes": [0.0, 75.0, 78.0],
"tests": [100.0, 100.0]
} # Add your function below!
def average(lst):
sum = 0
for num in lst:
sum = sum+num
return float(sum)/len(lst)
# function get_average
def get_average(stu):
return 0.1*average(stu["homework"])+0.3*average(stu["quizzes"])+0.6*average(stu["tests"])

第七节

1 练习

1 写一个函数get_letter_grade,参数是score,按照以下的规则返回对应的等级

Scores 90 or above: return "A"
If 80 <= score < 90: return "B"
If 70 <= score < 80: return "C"
If 60 <= score < 70: return "D"
If score < 60: return "F"
lloyd = {
"name": "Lloyd",
"homework": [90.0, 97.0, 75.0, 92.0],
"quizzes": [88.0, 40.0, 94.0],
"tests": [75.0, 90.0]
}
alice = {
"name": "Alice",
"homework": [100.0, 92.0, 98.0, 100.0],
"quizzes": [82.0, 83.0, 91.0],
"tests": [89.0, 97.0]
}
tyler = {
"name": "Tyler",
"homework": [0.0, 87.0, 75.0, 22.0],
"quizzes": [0.0, 75.0, 78.0],
"tests": [100.0, 100.0]
} # Add your function below!
def average(lst):
sum = 0
for num in lst:
sum = sum+num
return float(sum)/len(lst) # function get_average
def get_average(stu):
return 0.1*average(stu["homework"])+0.3*average(stu["quizzes"])+0.6*average(stu["tests"]) # function get_letter_grade
def get_letter_grade(score):
if(score >= 90):
return "A"
elif(score >= 80 and score < 90):
return "B"
elif(score >= 70 and score < 80):
return "C"
elif(score >= 60 and score < 70):
return "D"
else:
return "F"

第八节

1 练习:写一个函数get_class_average,参数是班级的列表,求出这个班级所有人的平均值

lloyd = {
"name": "Lloyd",
"homework": [90.0, 97.0, 75.0, 92.0],
"quizzes": [88.0, 40.0, 94.0],
"tests": [75.0, 90.0]
}
alice = {
"name": "Alice",
"homework": [100.0, 92.0, 98.0, 100.0],
"quizzes": [82.0, 83.0, 91.0],
"tests": [89.0, 97.0]
}
tyler = {
"name": "Tyler",
"homework": [0.0, 87.0, 75.0, 22.0],
"quizzes": [0.0, 75.0, 78.0],
"tests": [100.0, 100.0]
} # Add your function below!
def average(lst):
sum = 0
for num in lst:
sum = sum+num
return float(sum)/len(lst) # function get_average
def get_average(stu):
return 0.1*average(stu["homework"])+0.3*average(stu["quizzes"])+0.6*average(stu["tests"]) # function get_letter_grade
def get_letter_grade(score):
if(score >= 90):
return "A"
elif(score >= 80 and score < 90):
return "B"
elif(score >= 70 and score < 80):
return "C"
elif(score >= 60 and score < 70):
return "D"
else:
return "F" # function get_class_average
def get_class_average(class_list):
sum = 0
for stu in class_list:
sum = sum + get_average(stu)
return float(sum)/len(class_list)

第十节

1 练习:打印出students这个班级列表的平均值,然后利用这个值求平均等级

lloyd = {
"name": "Lloyd",
"homework": [90.0, 97.0, 75.0, 92.0],
"quizzes": [88.0, 40.0, 94.0],
"tests": [75.0, 90.0]
}
alice = {
"name": "Alice",
"homework": [100.0, 92.0, 98.0, 100.0],
"quizzes": [82.0, 83.0, 91.0],
"tests": [89.0, 97.0]
}
tyler = {
"name": "Tyler",
"homework": [0.0, 87.0, 75.0, 22.0],
"quizzes": [0.0, 75.0, 78.0],
"tests": [100.0, 100.0]
} # students list
students = [lloyd , alice , tyler] # Add your function below!
def average(lst):
sum = 0
for num in lst:
sum = sum+num
return float(sum)/len(lst) # function get_average
def get_average(stu):
return 0.1*average(stu["homework"])+0.3*average(stu["quizzes"])+0.6*average(stu["tests"]) # function get_letter_grade
def get_letter_grade(score):
if(score >= 90):
return "A"
elif(score >= 80 and score < 90):
return "B"
elif(score >= 70 and score < 80):
return "C"
elif(score >= 60 and score < 70):
return "D"
else:
return "F" # function get_class_average
def get_class_average(class_list):
sum = 0
for stu in class_list:
sum = sum + get_average(stu)
return float(sum)/len(class_list) # print you result
score = get_class_average(students)
print score
print get_letter_grade(score

Python 入门教程 10 ---- Student Becomes the Teacher的更多相关文章

  1. 老鸟的Python入门教程

    转自老鸟的Python入门教程 重要说明 这不是给编程新手准备的教程,如果您入行编程不久,或者还没有使用过1到2门编程语言,请移步!这是有一定编程经验的人准备的.最好是熟知Java或C,懂得命令行,S ...

  2. Linux pwn入门教程(10)——针对函数重定位流程的几种攻击

    作者:Tangerine@SAINTSEC 本系列的最后一篇 感谢各位看客的支持 感谢原作者的付出一直以来都有读者向笔者咨询教程系列问题,奈何该系列并非笔者所写[笔者仅为代发]且笔者功底薄弱,故无法解 ...

  3. Python入门教程 超详细1小时学会Python

    Python入门教程 超详细1小时学会Python 作者: 字体:[增加 减小] 类型:转载 时间:2006-09-08我要评论 本文适合有经验的程序员尽快进入Python世界.特别地,如果你掌握Ja ...

  4. Python入门教程 超详细1小时学会Python

    Python入门教程 超详细1小时学会Python 本文适合有经验的程序员尽快进入Python世界.特别地,如果你掌握Java和Javascript,不用1小时你就可以用Python快速流畅地写有用的 ...

  5. python入门(10)使用List和tuple

    python入门(10)使用List和tuple list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可 ...

  6. 2018-06-21 中文代码示例视频演示Python入门教程第五章 数据结构

    知乎原链 续前作: 中文代码示例视频演示Python入门教程第四章 控制流 对应在线文档: 5. Data Structures 这一章起初还是采取了尽量与原例程相近的汉化方式, 但有些语义较偏(如T ...

  7. 2018-06-20 中文代码示例视频演示Python入门教程第四章 控制流

    知乎原链 续前作: 中文代码示例视频演示Python入门教程第三章 简介Python 对应在线文档: 4. More Control Flow Tools 录制中出了不少岔子. 另外, 输入法确实是一 ...

  8. 2018-06-20 中文代码示例视频演示Python入门教程第三章 简介Python

    知乎原链 Python 3.6.5官方入门教程中示例代码汉化后演示 对应在线文档: 3. An Informal Introduction to Python 不知如何合集, 请指教. 中文代码示例P ...

  9. 极度舒适的 Python 入门教程,小猪佩奇也能学会~

    编程几乎已经成为现代人的一门必修课,特别是 Python ,不仅长期霸占编程趋势榜.薪资榜第一,还屡屡进入小学教材,甚至成为浙江省信息技术高考项目-- 今天,小编带来了一门极度舒适的 Python 入 ...

随机推荐

  1. (转)PHP获取今天、昨天、明天的日期

    <?php echo "今天:".date("Y-m-d")."<br>"; echo "昨天:".d ...

  2. Wi-Fi无线网络下行速度超级慢 (5kb/s)之解决方案

    转载:http://www.iplaysoft.com/wifi-slow-solution.html 作者:X-Force 转载原因:该文分类提出了多种解决方案,并详述其原因.简洁清晰,可作为参考方 ...

  3. 研究WCF并发及处理能力的控制

    WCF 跟并发 性能相关的几个配置:1.系统控制的客户端网络连接并发(如果服务端也需要并发请求的话这个参数也是需要的):          <configuration>          ...

  4. 一个简单的web服务器例子

    一个简单的web容器小例子,功能十分简单,只能访问静态资源,对于新手来说还是有一定的意义.主要分三个类 1.server类:主要功能开启socketServer,阻塞server,接收socket访问 ...

  5. [转]看看国外的javascript题目,你能全部做对吗?

    叶小钗 的博客最近都在讨论面试题目 正好以前也看过一篇,就借花献佛拿出来分享一下 http://perfectionkills.com/javascript-quiz/ 附带了自己的理解,答案有争议的 ...

  6. 输出不大于N的素数的个数

    输出不大于N的素数的个数 Sieve of Eratosthenes 方法  素数的性质: 非素数可以分解为素数乘积. 证明 (1)n = 2 成立,n = 3 成立: (2)若 n = k 时成立, ...

  7. Windows下的 mysql 5.5主从同步配置

    环境说明:   Master:127.0.0.1 3306 Slave:127.0.0.1 3307     MySQL 的 Master 配置:   配置my.ini:   [mysqld]   # ...

  8. Oracle中Long类型的使用与不可使用

    ORA-01754 表只能包含一个LONG类型的列alter table 表名 add 字段名 long raw错误原因:数据表中同时建立了LONG RAW类型和LONG类型.------------ ...

  9. mysql5.7.14安装与配置

    参考文章链接: http://jingyan.baidu.com/article/afd8f4de9006d934e286e9fd.html http://www.cnblogs.com/wenthi ...

  10. 10个必看的PHP小代码,很实用!

    获取浏览器IP地址 function getRemoteIPAddress() { $ip = $_SERVER['REMOTE_ADDR']; return $ip; } 如果有代理服务器的情况下获 ...