LOFTER for ipad —— 让兴趣,更有趣

点击下载 关闭
【风变编程】第六课笔记布尔值和四种语句
爆料堂 2020-02-10

一、布尔值与布尔运算


(一)bool()函数

判断真假

bool(False)
  • 1

输出:False
  • 1

  • 2

 

(二)and、or、not、in、not in五种运算

 
 

二、break、continue、pass、else语句


(一)简单解释

(二)else

当循环中没有碰到break语句,就会执行循环后面的else语句,否则就不会执行。

for i inrange(5):  

a =int(input('请输入0结束循环,你有5次机会:'))

if a ==0:print('你触发了break语句,导致else语句不会生效。')

break

else:

print('5次循环你都错过了,else语句生效了。')


 

INF、练习题


(一)囚徒困境

练习要求:

假设有两名囚徒A和B因为合伙犯罪被抓捕,因没有确凿可以指认罪行的证据,审判者准备单独审判两位囚徒。
1.若两人都认罪,则两人各判10年;
2.若一个认罪一个抵赖,则认罪的人判1年,抵赖的人判20年;
3.若两人都抵赖,则各判3年。
现在,请写个代码:当两人都抵赖时,打印判决,代码结束;若为其他结果,则在打印判决后继续循环。


(二)记录困境中的选择

练习要求:
上一个练习,我们将“囚徒困境”写成了代码,让程序收集两名囚犯的认罪情况,进而决定他们的判决:
两人都认罪,则各判10年;一个认罪一个抵赖,则前者判1年,后者判20年;两人都抵赖,各判3年。只有两人都不认罪,程序才会停止。
现在有一个社会学家,在不同的人群中做这个实验,一旦遇到都不认罪的情况,就停止该人群中的实验。
同时,他希望程序能记录每一对实验者的选择,以及记录第几对实验者都选择不认罪。请你帮帮他吧。


(三)演员的作品

练习要求:

我很喜欢看电影,我回忆了一下,这两年我觉得还不错的国产电影。
下面,会将电影的影片名和主演放在字典里,如:

movie ={'妖猫传':['黄轩','染谷将太']}
  • 1

需要你补充一些代码,让其他人只要输入演员名,就打印出:××出演了电影××。
 
 
 
 

INF+1、练习题答案


 
 
 
 

(一)囚徒困境

考察点:
1.while True
2.break

whileTrue:    

a =input('A,你认罪吗?请回答认罪或者不认')   

b =input('B,你认罪吗?请回答认罪或者不认')

if a =='认罪'and b =='认罪':print('两人都得判10年,唉')

elif a =='不认'and b =='认罪':print('A判20年,B判1年,唉')

elif a =='认罪'and b =='不认':

print('A判1年,B判20年')else:print('都判3年,太棒了')break# 当满足开头提到的条件时,跳出循环。


(二)记录困境中的选择

考察点:
1.for循环
2.range()函数

n =0

list_answer =[]

whileTrue:   

n +=1    

a =input('A,你认罪吗?请回答认罪或者不认:') 

   b =input('B,你认罪吗?请回答认罪或者不认:') 

   list_answer.append([a,b])# 用列表嵌套的方式来存放实验者的选择,也可用元组或字典。

if a =='认罪'and b =='认罪':print('两人都得判10年,唉')

elif a =='不认'and b =='认罪':

print('A判20年,B判1年,唉')

elif a =='认罪'and b =='不认':

print('A判1年,B判20年')else:print('都判3年,太棒了')

break

print('第'+str(n)+'对实验者选了最优解。')

for i inrange(n):# 注意数据类型的转换,以及计数起点的不同(0和1)print('第'+str(i+1)+'对实验者的选择是:'+str(list_answer[i]))


(三)演员的作品

考察点:
1.数据提取
2.条件判断

movies ={'妖猫传':['黄轩','染谷将太'],'无问西东':['章子怡','王力宏','祖峰'],'超时空同居':['雷佳音','佟丽娅'],}

actor =input('你想查询哪个演员?')for  movie in movies:# 用 for 遍历字典    

actors = movies[movie]# 读取各个字典的主演表if actor in actors:print(actor +'出演了电影'+ movie)



推荐文章
评论(0)
联系我们|招贤纳士|移动客户端|风格模板|官方博客|侵权投诉 Reporting Infringements|未成年人有害信息举报 0571-89852053|涉企举报专区
网易公司版权所有 ©1997-2024  浙公网安备 33010802010186号 浙ICP备16011220号-11 增值电信业务经营许可证:浙B2-20160599
网络文化经营许可证: 浙网文[2022]1208-054号 自营经营者信息 工业和信息化部备案管理系统网站 12318全国文化市场举报网站
网信算备330108093980202220015号 网信算备330108093980204230011号
分享到
转载我的主页