练习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 或False 。
创建至少10个测试,且其中结果分别为True 和False 的测试都至少有5个。

car = 'subaru'
print("is car == 'subaru'? true")
print(car == 'subaru')
print("\nis car == 'honda'? flase")
print(car == 'honda')
print("\nis car == 'bwm'? flase")
print(car == 'bwm')
food = 'rice'
print("\nis food == 'rice'? true")
print(food == 'rice')
print("\nis food == 'beef'? flase")
print(food == 'beef')
happy = 'much_money'
print("\nis happy == 'much_money'? true")
print(happy == 'much_money')
print("\nis happy == 'little_money'? flase")
print(happy == 'little_money')
work = 'have_money'
print("\n is work == 'have_money'?true")
print(work == 'have_money')
print("\n is work == 'no_money'?flase")
print(work == 'no_money')
print("\n is work == 'big_house'?flase")
print(work == 'big_house')

练习5-2:更多条件测试  你并非只能创建10个测试。如果想尝试做更多比较,可再编写一些测试,并将它们加入conditional_tests.py中。对于下面列出的各种情况,至少编写两个结果分别为True 和False的测试。
检查两个字符串相等和不等。
使用方法lower() 的测试。
涉及相等、不等、大于、小于、大于等于和小于等于的数值测试。
使用关键字and 和or 的测试。
测试特定的值是否包含在列表中。
测试特定的值是否未包含在列表中

#字符串的不等与相等
info_1 = 'web'
info_2 = 'book'
print("info_1 == info_2 ? flase")
print(info_1 == info_2)
ipad = 'apple'
iphone = 'apple'
print("ipad == iphone,true")
print(ipad == iphone)#方法low()的测试
food = 'Rice'
print(food.lower() == 'rice')#关于相等、不等、大于、小于、大于等于和小于等于的数值测试
#使用关键词and和or的测试
num_0 = 0
print("num_0 == 0, true")
print(num_0 == 0)
print("num_0 == 10, flase")
print(num_0 == 10)
print("num_0 > 0, flase")
print(num_0 > 0)
print("num_0 < 0, flase")
print(num_0 < 0)
print("num_0 > 0 and num_0 == 0, flase")
print(num_0 > 0 and num_0 == 0)
print("num_0 > 0 or num_0 == 0, true")
print(num_0 > 0 or num_0 == 0)
print("num_0 < 0 and num_0 == 0, flase")
print(num_0 < 0 and num_0 == 0)
print("num_0 < 0 or num_0 == 0, true")
print(num_0 < 0 or num_0 == 0)#测试测定值是否包含在列表中,测试特定值是否未包含在列表中
restaurant_food = ['yogurt','tomato','meat']
myfavorite_food = 'yogurt'
if myfavorite_food in restaurant_food:print(f"i'd like a cup of {myfavorite_food}")
friendfavorite_food = 'coffe'
if friendfavorite_food not in restaurant_food:print("how about yogurt")

练习5-3:外星人颜色  假设在游戏中刚射杀了一个外星人,请创建一个名为alien_color 的变量,并将其赋值为’green’ 、‘yellow’ 或’red’ 。
编写一条if 语句,检查外星人是否是绿色的。如果是,就打印一条消息,指出玩家获得了5分。

alien_color = 'green'
if alien_color == 'green':print("you got 5 points")

练习5-4:外星人颜色2  像练习5-3那样设置外星人的颜色,并编写一个if-else 结构。
如果外星人是绿色的,就打印一条消息,指出玩家因射杀该外星人获得了5分。
如果外星人不是绿色的,就打印一条消息,指出玩家获得了10分。
编写这个程序的两个版本,在一个版本中执行if 代码块,在另一个版本中执行else 代码块。

alien_color = 'green'
if alien_color == 'green':print("you got 5 points")
else:print("you got 10 points")

练习5-5:将练习5-4中的if-else 结构改为if-elif-else 结构。
如果外星人是黄色的,就打印一条消息,指出玩家获得了10分。
如果外星人是红色的,就打印一条消息,指出玩家获得了15分。
编写这个程序的三个版本,分别在外星人为绿色、黄色和红色时打印一条消息。

alien_color = 'green'
if alien_color == 'green':print("you got 5 points")
elif alien_color == 'yellow':print("you got 10 points")
elif alien_color == 'red':print("you got 15 points")

练习5-6:人生的不同阶段  
设置变量age 的值,再编写一个if-elif-else 结构,根据age 的值判断一个人处于人生的哪个阶段。
如果年龄小于2岁,就打印一条消息,指出这个人是婴儿。
如果年龄为2(含)~4岁,就打印一条消息,指出这个人是幼儿。
如果年龄为4(含)~13岁,就打印一条消息,指出这个人是儿童。
如果年龄为13(含)~20岁,就打印一条消息,指出这个人是青少年。
“如果年龄为20(含)~65岁,就打印一条消息,指出这个人是成年人。
如果年龄超过65岁(含),就打印一条消息,指出这个人是老年人。

age = 2
if age < 2:print("婴儿")
elif age >= 2 and age< 4:print("幼儿")
elif age >= 4 and age< 13:print("儿童")
elif age >= 13 and age< 20:print("青少年")
elif age >= 20 and age< 65:print("成年人")
elif age >= 65:print("老年人")

练习5-7:喜欢的水果  
创建一个列表,其中包含你喜欢的水果,再编写一系列独立的if 语句,检查列表中是否包含特定的水果。
将该列表命名为favorite_fruits ,并在其中包含三种水果。
编写5条if 语句,每条都检查某种水果是否包含在列表中。如果是,就打印一条消息,下面是一个例子。
You really like bananas!

fruits = ['banana','tomato','lemon','apple','orange']
if 'banana' in fruits:print("you really like banana!")
if 'tomato' in fruits:print("you really like tomato!")
if 'lemon' in fruits:print("you really like lemon!")
if 'apple' in fruits:print("you really like apple!")
if 'orange' in fruits:print("you really like orange!")

练习5-8:以特殊方式跟管理员打招呼  创建一个至少包含5个用户名的列表,且其中一个用户名为’admin’ 。想象你要编写代码,在每位用户登录网站后都打印一条问候消息。遍历用户名列表,并向每位用户打印一条问候消息。
如果用户名为’admin’ ,就打印一条特殊的问候消息,如下所示。
Hello admin, would you like to see a status report?
否则,打印一条普通的问候消息,如下所示。
Hello Jaden, thank you for logging in again.

users = ['may','grace','helen','admin','tom']
for user in users:if user == 'admin':print("Hello admin, would you like to see a status report?")else:print(f"Hello {user.title()}, thank you for logging in again.")

练习5-9:处理没有用户的情形  在为完成练习5-8编写的程序中,添加一条if 语句,检查用户名列表是否为空。
如果为空,就打印如下消息。
We need to find some users!

users = ['may','grace','helen','admin','tom']
if users:for user in users:if user == 'admin':print("Hello admin, would you like to see a status report?")else:print(f"Hello {user.title()}, thank you for logging in again.")
else:print("We need to find some users!")

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

users = []
if users:for user in users:if user == 'admin':print("Hello admin, would you like to see a status report?")else:print(f"Hello {user.title()}, thank you for logging in again.")
else:print("We need to find some users!")

练习5-10:检查用户名  按下面的说明编写一个程序,模拟网站如何确保每位用户的用户名都独一无二。
创建一个至少包含5个用户名的列表,并将其命名为current_users 。
再创建一个包含5个用户名的列表,将其命名为new_users ,并确保其中有一两个用户名也包含在列表current_users 中。
遍历列表new_users ,对于其中的每个用户名,都检查它是否已被使用。如果是,就打印一条消息,指出需要输入别的用户名;否则,打印一条消息,指出这个用户名未被使用。
确保比较时不区分大小写。换句话说,如果用户名’John’ 已被使用,应拒绝用户名’JOHN’ 。(为此,需要创建列表current_users 的副本,其中包含当前所有用户名的小写版本。)

current_users = ['may','grace','helen','admin','tom']
new_users = ['march','Grace','hery','admin','jerry']
for new_user in new_users:if new_user.lower() in current_users:print(f"{new_user}:该用户名已被使用")else:print(f"{new_user}:该用户名未使用")

练习5-11:序数  序数表示位置,如1st和2nd。序数大多以th结尾,只有1、2和3例外。
在一个列表中存储数字1~9。
遍历这个列表。
在循环中使用一个if-elif-else 结构,以打印每个数字对应的序数。输出内容应为"1st 2nd 3rd 4th […]

nums = list(range(1,9))
for num in nums:if num == 1:print(f"{num}st")elif num == 2:print(f"{num}nd")elif num == 3:print(f"{num}rd")else:print(f"{num}th")

python从入门到实践05习题:5-1~5-11相关推荐

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

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

  2. python教程课后答案-python从入门到实践课后习题第八章

    """ 8-1 消息 :编写一个名为 display_message() 的函数,它打印一个句子, 指出你在本章学的是什么.调用这个函数,确认显示的消息正确无误. &qu ...

  3. 《Python程序设计入门与实践》219道课后习题答案

    适用教材:Python程序设计入门与实践 I S B N:978-7-5606-5960-2 作    者:董付国 页    数:319页 例题数量:73个 演示代码:200段(不含例题代码) 习题数 ...

  4. Python从入门到实践习题答案(第九章 类)

    在学习<Python从入门到实践>,代码是自己编写的噢(虽然有些代码有参考其他大佬),点个赞再走8~ 9-1 餐馆:创建一个名为 Restaurant 的类,其方法__init__()设置 ...

  5. 董老师又双叒叕送书啦,10本《Python程序设计入门与实践》

    活动详情: 在本文文末留言,留言获得点赞. 自本文推送之时活动立即生效,当天2月20日晚上21:00结束,获赞最多的前10条留言,每人获赠一本书. 2月20日晚上21:01在本文文末置顶留言公布获奖名 ...

  6. 新书推荐--《Python程序设计入门与实践》

    过完春节快递小哥们上班以后,公众号会连续送几波书,敬请留意! 书名:Python程序设计入门与实践 ISBN:978-7-5606-5960-2 作者:董付国 页数:319页 例题数量:73例 演示代 ...

  7. python从入门到实践和从入门到精通-Python从入门到实践之列表|第1天

    User:你好我是森林 Date:2018-02-14 Mark:<Python从入门到实践> 列表 本章主要从列表的概念入手,逐步深入到对列表的操作. 列表 概念 列表由一系列按特定顺序 ...

  8. Python数据挖掘入门与实践-OneR分类算法

    Python数据挖掘入门与实践-OneR分类算法 OneR算法 OneR算法是根据已有的数据中,具有相同特征值的个体最可能属于哪个类别进行分类. 在本例中,只需选区Iris是个特征中分类效果最好的一个 ...

  9. Python从入门到实践第9章课后作业

    Python从入门到实践第9章课后作业 编写过程中不知道如何将列表传入子类中,下面实例中均没有使用 #9-1 # class Restaurant(): # """模拟饭 ...

最新文章

  1. ruby tk秒表的应用
  2. 树中数据间关系整理~节点关系及用途解析及常用术语整理
  3. [转]ExecuteNonQuery()、ExecuteReader()、ExecuteScalar()的简单说明
  4. crontab/ntpdate——时间同步
  5. 7-23 还原二叉树 (25 分)(分析加详解)
  6. Matlab将一矩阵中等于某个值的元素全部替换成另一个值
  7. 路由器下一跳地址怎么判断_网络基本功三:细说路由器
  8. 数据库创建联合主键(MySql)
  9. ORACLE RAC中的oc4j和gsd资源以及RAC相关的进程
  10. python改变列的数据类型_PySpark SQL: 改变列的数据类型
  11. 《机器学习实战》学习总结(四)逻辑回归原理
  12. 告别ASP.NET操作EXCEL的烦恼(总结篇)
  13. python 正则表达式匹配数字或者小数点_Python 正则表达式 匹配小数
  14. 网络安全:教你五招服务器安全维护技巧
  15. 高中计算机网络培训心得体会,高中老师信息技术培训心得体会
  16. 【预测模型】趋势移动平均法预测发电量
  17. java web做什么_Javaweb是什么?javaweb是干什么的?
  18. Hibernate 检索策略的学习
  19. 3年试点即将到期,电子印章将成网络货运新动力
  20. [UOJ311]积劳成疾

热门文章

  1. ss fping.php,WordPress wpSS插件'ss_handler.php' SQL注入漏洞
  2. 如何写出一份优秀的程序员简历?
  3. 注销slack账号_如何从您的Slack帐户中注销所有设备
  4. python中怎么画一个机器猫_Python turtle模块实战:绘制机器猫的主体
  5. linux中压缩某个文件夹
  6. 如何使EndNoteX9支持GB/T 7714-2015格式参考文献解决作者名字全为大写去掉文章标题中的%J
  7. Python:什么是面向对象的编程?
  8. numpy_arrange函数
  9. Apache ShardingSphere 在京东白条场景的落地之旅
  10. 【CTR预估】互联网大厂CTR预估前沿进展