Hello,小数先生粗线啦~~~今天教大家制作一款美食推荐器
先看下美食推荐器效果(文中最后有美食推荐器代码)
用数据做判断:布尔值
计算机的逻辑判断,只有两种结果,就是True(真)和False(假),计算真假的过程 ,叫做布尔运算。True和False就叫布尔值
例
print(1>2)
print(1<2)
print('小数先生'=='小树先生')
print('小数先生'!='小树先生') # !=代表不等于
输出
False
True
False
True
注:print()括号内的计算其实就是布尔运算,终端上出现的True和False称为布尔值
只有当条件判断为True时,if和while后面的子句才会 执行下去
例
if True:
print('hello,True')
if False:
print('hello,False') #判断为假,不会执行子句
输出
hello,True
注:使用while True会陷入无限循环,按ctrl+c退出
总结图
布尔运算的方式:两个数值做比较
用两个数值作比较的布尔运算
注意:==表示相等关系,而=表示给变量赋值
例
name = input('请输入小数先生的公众号:')
if name == '数仁信息':
print('实在是太聪明了')
else:
print('已经很接近了加油')
输出
请输入小数先生的公众号:数仁信息 #手动输入
实在是太聪明了
布尔运算的方式:直接用数值做运算
数据真假的判断
注:None代表的是空值,而0是整数,并非什么都没有
例
if 1:
print('hello,1')
if 0:
print('hello,0') #判断为假,不会执行子句
输出
hello,1
布尔运算的方式:布尔值之间的运算
and的计算逻辑(两个条件都为真时返回True,其余返回Fales)
or的计算逻辑(两个条件其中一个为真返回True,全为假时返回False)
not的计算逻辑
例
if 1 > 2 and 2 > 1:
print('(1>2) and (2>1) is True') #1>2为假,1>2 and 2>1为假
if 1 > 2 or 2 > 1:
print('(1>2)or(2>1) is True')
if not (1>2):
print('not (1>2) is True')
输出
(1>2)or(2>1) is True
not (1>2) is True
break语句
break 语句可以跳出 for 和 while 的循环体
例(for循环)
for i in range(5):
print(i)
if i == 3:
break #当i等于3的时候结束循环
输出
0
1
2
3
例(while循环)
while True:
answer = input('喜不喜欢Python?')
if answer == '喜欢':
break #输入喜欢跳出循环
输出
喜不喜欢Python?不喜欢
喜不喜欢Python?不喜欢
喜不喜欢Python?喜欢
continue语句
continue语句被用来告诉 Python 跳过当前循环块中的剩余语句,然后继续进行下一轮循环
for i in range(1,5):
print('关注数仁信息的第{}天'.format(i))
if i == 3:
continue #当i等于3的s时候回到循环开头
print('Moring,小数先生')
输出
关注数仁信息的第1天
Moring,小数先生
关注数仁信息的第2天
Moring,小数先生
关注数仁信息的第3天
关注数仁信息的第4天
Moring,小数先生
pass语句
pass 不做任何事情,一般用做占位语句
例
for i in range(5):
if i == 3:
pass # i等于3的时候什么都不做
else:
print(i)
输出
0
1
2
4
美食推荐器代码
import time
import random
foods_list = ['肯德基','麦当劳','汉堡王','达美乐','必胜客',
'水饺','酸菜鱼','煲仔饭','过桥米线','杭帮菜',
'火锅','冒菜','麻辣烫','麻辣香锅','轻食','木桶饭']
recommend_list = foods_list[:]
print('{} 小数先生的美食推荐器 {}'.format('-'*20,'-'*20) + '\n')
time.sleep(0.5)
while True:
print(' ')
time.sleep(0.5)
print('美食推荐,选择当前美食输入y,继续推荐按回车')
if len(recommend_list) > 0:
recommend_food = random.choice(recommend_list)
time.sleep(0.5)
choice = input('吃{}怎么样?'.format(recommend_food))
print(' ')
time.sleep(0.5)
print('-'*60)
if choice == 'y':
print('那就这么开心的决定了,中午去吃{}'.format(recommend_food))
if recommend_food in ['汉堡王','肯德基','麦当劳','必胜客']:
print(r'''
_ooOoo_
o8888888o
88" . "88
(| -_- |)
O\ = /O
____/`---'\____
.' \\| |// `.
/ \\||| : |||// \
/ _||||| -:- |||||- \
| | \\\ - /// | |
| \_| ''\---/'' | |
\ .-\__ `-` ___/-. /
___`. .' /--.--\ `. . ___
."" '< `.___\_<|>_/___.' >'"".
| | : `- \`.;`\ _ /`;.`/ - ` : | |
\ \ `-. \_ __\ /__ _/ .-` / /
======`-.____`-.___\_____/___.-`____.-'======
`=---='
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
佛祖保佑 不会长肉
''')
break
else:
recommend_list.remove(recommend_food)
else:
choose_like = input('所有美食已经推荐完,重新推荐输入r,按任意键美食推荐器给出最佳选择:')
if choose_like == 'r':
recommend_list = foods_list[:]
else:
print('{}是不错的选择'.format(random.choice(foods_list)))
print('-'*60)
break
作者丨小数先生
来源丨公众号数仁信息