第五章作业

5-1条件测试 : 编写一系列条件测试; 将每个测试以及你对其结果的预测和实际结果都打印出来。 你编写的代码应类似于下面这样:

car = ‘ subaru‘

print("Is car == ‘ subaru‘ ? I predict True. ")

print(car == ‘ subaru‘ )

print("\nIs car == ‘ audi‘ ? I predict False. ")

print(car == ‘ audi‘ )

详细研究实际结果, 直到你明白了它为何为True 或Fal

详细研究实际结果, 直到你明白了它为何为True 或False 。

创建至少10个测试, 且其中结果分别为True 和False 的测试都至少有5个。

5-2更多的条件测试 : 你并非只能创建10个测试。 如果你想尝试做更多的比较, 可再编写一些测试, 并将它们加入到conditional_tests.py中。 对于下面列出的各种测

试, 至少编写一个结果为True 和False 的测试。

检查两个字符串相等和不等。

使用函数lower( ) 的测试。

检查两个数字相等、 不等、 大于、 小于、 大于等于和小于等于。

使用关键字and 和or 的测试。

测试特定的值是否包含在列表中。

测试特定的值是否未包含在列表中。

答:

car = ‘subaru‘

print("Is car == ‘ subaru‘ ? I predict True.")print(car == ‘subaru‘)print("\nIs car == ‘ audi‘ ? I predict False.")print(car == ‘audi‘)

输出:

Is car== ‘subaru‘? I predict True.

True

Is car== ‘audi‘? I predict False.

False

5-2 略

5-3外星人颜色#1: 假设在游戏中刚射杀了一个外星人, 请创建一个名为alien_color 的变量, 并将其设置为‘ green‘ 、 ‘ yellow‘ 或‘ red‘ 。

编写一条if 语句, 检查外星人是否是绿色的; 如果是, 就打印一条消息, 指出玩家获得了5个点。

编写这个程序的两个版本, 在一个版本中上述测试通过了, 而在另一个版本中未通过(未通过测试时没有输出) 。

5-4外星人颜色#2: 像练习 5-3那样设置外星人的颜色, 并编写一个if-else 结构。

如果外星人是绿色的, 就打印一条消息, 指出玩家因射杀该外星人获得了5个点。

如果外星人不是绿色的, 就打印一条消息, 指出玩家获得了10个点。

编写这个程序的两个版本, 在一个版本中执行if 代码块, 而在另一个版本中执行else 代码块。

5-5外星人颜色#3: 将练习 5-4中的if-else 结构改为if-elif-else 结构。

如果外星人是绿色的, 就打印一条消息, 指出玩家获得了5个点。

如果外星人是黄色的, 就打印一条消息, 指出玩家获得了10个点。

如果外星人是红色的, 就打印一条消息, 指出玩家获得了15个点。

编写这个程序的三个版本, 它们分别在外星人为绿色、 黄色和红色时打印一条消息。

5-6人生的不同阶段 : 设置变量age 的值, 再编写一个if-elif-else 结构, 根据age 的值判断处于人生的哪个阶段。

如果一个人的年龄小于2岁, 就打印一条消息, 指出他是婴儿。

如果一个人的年龄为2(含) ~4岁, 就打印一条消息, 指出他正蹒跚学步。

如果一个人的年龄为4(含) ~13岁, 就打印一条消息, 指出他是儿童。

如果一个人的年龄为13(含) ~20岁, 就打印一条消息, 指出他是青少年。

如果一个人的年龄为20(含) ~65岁, 就打印一条消息, 指出他是成年人。

如果一个人的年龄超过65(含) 岁, 就打印一条消息, 指出他是老年人。

5-7喜欢的水果 : 创建一个列表, 其中包含你喜欢的水果, 再编写一系列独立的if 语句, 检查列表中是否包含特定的水果。

将该列表命名为favorite_fruits , 并在其中包含三种水果。

编写5条if 语句, 每条都检查某种水果是否包含在列表中, 如果包含在列表中, 就打印一条消息, 如“You really like bananas!”。

答:5-3

alien_color = [‘green‘]if ‘green‘ in alien_color:#这个green必须要有‘‘啊

print(‘The player gets 5 points.‘)

版本2

alien_color= [‘red‘]if ‘green‘ inalien_color:print(‘The player gets 5 points.‘)

5-4

alien_color = [‘green‘]if ‘green‘ in alien_color:#这个green必须要有‘‘啊

print(‘The player gets 5 points.‘)else:print(‘The player gets 10 points.‘)#版本2

alien_color = [‘red‘]if ‘green‘ inalien_color:print(‘The player gets 5 points.‘)else:print(‘The player gets 10 points.‘)

5-5

alien_color = [‘green‘]#其他两个版本就是将green改一下

if ‘green‘ inalien_color:print(‘The player gets 5 points.‘)elif ‘yellow‘ inalien_color:print(‘The player gets 10 points.‘)elif ‘red‘ inalien_color:print(‘The player gets 15 points.‘)

5-6

age = 25

if age <2:print(‘他是婴儿。‘)elif age <4:print(‘他正蹒跚学步。‘)elif age < 13:print(‘他是儿童。‘)elif age < 20:print(‘他是青少年。‘)elif age < 65:print(‘他是成年人。‘)else:print(‘他是老年人。‘)

5-7略

5-8以特殊方式跟管理员打招呼 : 创建一个至少包含5个用户名的列表, 且其中一个用户名为‘ admin‘ 。 想象你要编写代码, 在每位用户登录网站后都打印一条问

候消息。 遍历用户名列表, 并向每位用户打印一条问候消息。

如果用户名为‘ admin‘ , 就打印一条特殊的问候消息, 如“Hello admin, would you like to see a status report?”。

否则, 打印一条普通的问候消息, 如“Hello Eric, thank you for logging in again”。

5-9处理没有用户的情形 : 在为完成练习 5-8编写的程序中, 添加一条if 语句, 检查用户名列表是否为空。

如果为空, 就打印消息“We need to find some users!”。

删除列表中的所有用户名, 确定将打印正确的消息。

5-10检查用户名 : 按下面的说明编写一个程序, 模拟网站确保每位用户的用户名都独一无二的方式。

创建一个至少包含5个用户名的列表, 并将其命名为current_users 。

再创建一个包含5个用户名的列表, 将其命名为new_users , 并确保其中有一两个用户名也包含在列表current_users 中。

遍历列表new_users , 对于其中的每个用户名, 都检查它是否已被使用。 如果是这样, 就打印一条消息, 指出需要输入别的用户名; 否则, 打印一条消息, 指

出这个用户名未被使用。

确保比较时不区分大消息; 换句话说, 如果用户名‘ John‘ 已被使用, 应拒绝用户名‘ JOHN‘ 。

5-11序数 : 序数表示位置, 如1st和2nd。 大多数序数都以th结尾, 只有1、 2和3例外。

在一个列表中存储数字1~9。

遍历这个列表。

在循环中使用一个if-elif-else 结构, 以打印每个数字对应的序数。 输出内容应为1st 、 2 nd 、 3rd 、 4 th 、 5th 、 6th 、 7 th 、 8th 和9th , 但每个序

数都独占一行。

答;5-8

users = [‘admin‘,‘liming‘,‘zhangsan‘,‘lisi‘,‘wangshi‘]for user inusers:if user == ‘admin‘:#这里忘了用引号,因为admin是个单字符

print(‘Hello‘ + user + ‘,would you like to see a status report?‘)else:#注意else的缩进要和if的一样

print(‘Hello‘ + user +‘,thank you for logging in again‘)

5-9

users =[]if users:#此处我们进行了简单检查, 而不是直接执行for 循环

for user inusers:print(‘Hello‘ + user + ‘,would you like to see a status report?‘)else:#注意else的缩进要和if的一样

print(‘Hello‘ + user +‘,thank you for logging in again‘)else:print(‘“We need to find some users!”‘)

输出;

“We need to find some users!”

范的错误的

users =[]if user inusers:print(‘Hello‘ + user + ‘,would you like to see a status report?‘)else:#注意else的缩进要和if的一样

print(‘Hello‘ + user +‘,thank you for logging in again‘)else:#此处都标红了

print(‘“We need to find some users!”‘)

5-10

current_users = [‘admin‘,‘liming‘,‘zhangsan‘,‘lisi‘,‘wangshi‘,‘douyu‘,‘jiangyin‘,‘maoanying‘]

new_users= [‘ergou‘,‘lisi‘,‘shitou‘,‘admin‘,‘erya‘]for new_user innew_users:if new_user incurrent_users:print(new_user + ‘已被使用,请需要输入其他用户名!‘)else:print(new_user + ‘未被使用‘)#用没有再print都无所谓啊

输出:

ergou未被使用

lisi已被使用,请需要输入其他用户名!

shitou未被使用

admin已被使用,请需要输入其他用户名!

erya未被使用

5-11

错误的写法;

numbers = list(range(1,10))print(numbers)if numbers < 2:print(numbers + ‘st‘)if numbers < 4:print(numbers + ‘rd‘)if numbers <10:print(numbers + ‘th‘)

输出:

File"C:/Python36/day10/ss.py", line 3, in 不支持“列表”和“int”的实例。

if numbers < 2:

TypeError:‘

正确的

numbers = list(range(1,10))print(numbers)for number innumbers:if number == 1:print(‘\n‘ + str(number)+‘st‘)#必须用str不然没法比较啊,

elif number == 2:print(‘\n‘ + str(number)+‘nd‘)elif number == 3:print(‘\n‘ + str(number)+‘rd‘)else:print(‘\n‘ + str(number)+‘th‘)

输出;略

5-12设置if语句的格式 : 审核你在本章编写的程序, 确保正确地设置了条件测试的格式。

5-13自 己的想法 : 与刚拿起本书时相比, 现在你是一名能力更强的程序员了。 鉴于你对如何在程序中模拟现实情形有了更深入的认识, 你可以考虑使用程序来解决一

些问题。 随着编程技能不断提高, 你可能想解决一些问题, 请将这方面的想法记录下来。 想想你可能想编写的游戏、 想研究的数据集以及想创建的Web应用程序。

5-12 略

5-13 想编写坦克大战啊

python 第一行输入n表示一天中有多少人买水果_Python编程:从入门到实践——【作业】——第五章作业...相关推荐

  1. python 第一行输入n表示一天中有多少人买水果_python 浙大-MOOC-PTA ch4

    加粗的题目 有测试点未通过 有看出问题的 望大佬指导~~ 7-1 生成3的乘方表 (15 分) 输入一个非负整数n,生成一张3的乘方表,输出3 ​0~3n的值.可调用幂函数计算3的乘方. a=int( ...

  2. 《Python编程从入门到实践》第五章414

    5-1 条件测试 5-2 更多的条件测试 5-3 外星人颜色 #1 5-4 外星人颜色 #2 5-5 外星人颜色 #3 5-6 人生的不同阶段 5-7 喜欢的水果 5-8 以特殊方式跟管理员打招呼 5 ...

  3. python 从入门到实践_Python编程从入门到实践日记Day15

    Python编程从入门到实践日记Day15 第5章 字典(三) 1.使用字典(三) -由类似对象组成的字典 在前面的示例中,字典存储的是一个对象(游戏中的一个外星人)的多种信息,但你也可以使用字典来存 ...

  4. python tk combobox设置值为空_Python编程从入门到实践日记Day24

    Python编程从入门到实践日记Day24 第6章 用户输入和while循环(五) 1. 使用while循环来处理列表和字典(二) - 删除包含特定值的所有列表元素 在之前我们学过可以使用函数remo ...

  5. python从入门到实践学习笔记_Python编程从入门到实践:学习笔记1(第二章)

    开通博客我用的理由是:读书学习时记笔记,一方面为了回顾,一方面为了督促自己.fighting! 学习Python,我买了Python编程从入门到实践. 我将从第二章开始记录我认为我以后会忘记以及重要的 ...

  6. python从入门到实践_Python编程从入门到实践日记Day32

    Python编程从入门到实践日记Day32 第7章 函数(八) 1.传递任意数量的实参 - 使用任意数量的关键字实参 有时候,需要接受任意数量的实参,但预先不知道传递给函数的会是什么样的信息.在这种情 ...

  7. python编程入门到实践笔记习题_Python编程从入门到实践笔记——列表简介

    python编程从入门到实践笔记--列表简介 #coding=utf-8 #列表--我的理解等于c语言和java中的数组 bicycles = ["trek","cann ...

  8. python入门到实践试题及答案_python编程:入门到实践练习答案

    [实例简介] 书本<python编程:入门到实践>的课后练习答案 [实例截图] [核心代码] 练习答案 ├── Solutions - Chapter 10.docx ├── Soluti ...

  9. python编程从入门到实践第八章_Python编程从入门到实践的第三天

    #-*- coding = utf-8 -*- #今天是12月24号了,天气阴,不是太好,这是我看Python编程从入门到实践的第三天,现在是上午,我是皮卡丘,这是我敲的第八章的代码 #第八章练习题1 ...

最新文章

  1. android查看控件的xml属性,006 Android XML 控件属性设置技巧汇总
  2. oraclf 复杂查询练习_刷完这些烧脑的SQL练习题,复杂查询才能熟能生巧
  3. gridview自动换行
  4. 带你搞明白什么是缓存穿透、缓存击穿、缓存雪崩
  5. ActivityManager: Warning: Activity not started, its current task has been brought to the front
  6. hadoop的关键进程
  7. dataframe 空值替换为0_Python数据分析:Pandas之DataFrame
  8. Zabbix监控——proxy 分布式监控配置
  9. SpringCloud工作笔记048---RESTful API 中 HTTP 状态码的定义_以及把RESTFul版本号_放到http协议header中_以及RestFul设计时的两个误区
  10. mysql yum 升级_CentOS 7中升级MySQL 5.7.23的坑与解决方法
  11. Matlab图形加网格
  12. linux samba安装配置 总结
  13. [原创]Eclipse 安卓开发几个异常的处理办法
  14. VB实现人民币大小写金额转换
  15. 免费开源BI工具DataEase实现了SQL数据集动态传参?冲冲冲!!!
  16. 漫画:博弈论系列 之 囚徒困境
  17. 360浏览器插件360抢票王火车票刷票技巧
  18. ASP.NET MVC Area使用-将Area设置成独立项目
  19. html文本输入框代码是什么?如何创建html文本输入框
  20. Android模拟PC键盘输入法,黑科技:用电脑键盘代替手机输入法

热门文章

  1. ubuntu 运行python subprocess 出现/bin/sh: 1: source: not found 错误
  2. MATLAB实战系列(十八)-遗传算法解决TSP(旅行商)问题-算法原理
  3. SVM -支持向量机原理详解与实践之五
  4. 【Python刷题】_5
  5. awk打印第一个字母
  6. 【分布式计算】DFS BigTable
  7. 防雪崩利器:熔断器 Hystrix 的原理与使用--转
  8. Keepalived配置与使用--转载
  9. 【数据库】Redis是什么
  10. 【采用】【风险管理】(第一篇)风险管理核心指标