算法生成“最佳流行菜”
(本菜谱也可以治疗选择困难症,快速消耗临期食材,帮你探索新口味)
我记录了一段时间以来下厨房网页端里“24小时流行作品”里的菜谱,将大家的菜谱分解成食材或操作步骤这样零散的“烹饪单元”输入进python,经过计算机随机重组成新的流行菜。
每个“烹饪单元”的随机概率与菜谱的受欢迎程度正相关,所以随机生成出的菜会使用最流行的菜中最受欢迎的食材与做法构,计算机生成的结果当然荒诞又搞笑,但是理论上来说这道菜是最棒的!
那我们来试试看吧!这篇菜谱记录了我生成的四道菜:
青椒奶油炸五花肉
牛奶炒虾仁配芒果
被过度烹饪的白萝卜
泡沫蛋奶柚子羹
(文章末尾我会附上我使用的代码,复制粘贴到Python的编程软件里,引号里的汉字就是“烹饪单元”,讲它换成你现有的食材,就可以在不知道该吃什么的时候生成一下,快速消耗冰箱里的囤积食材~)
用料
电脑 | 我们需要PyCharm这个软件,可以官网免费下载 |
五花肉 | 200克 |
青椒 | 半个 |
奶油 | 100毫升左右 |
玉米淀粉 | 适量 |
虾仁 | 几只 |
牛奶 | 400毫升 |
芒果 | 半个 |
鸡蛋 | 2个 |
柚子 | 一瓣 |
耗油 | 一甩 |
盐 | 一勺 |
我偷偷加了胡椒粉 | 一点点 |
算法生成“最佳流行菜”的做法
这是我生成出的结果,接下来做这四道菜。
五花肉切片,凉水下锅煮到断生,备用。
将青椒切丁,混合打发好的奶油(奶油打到能挑起尖尖可以塑形的程度就好)
讲五花肉片沾上奶油与青椒粒,裹上一层淀粉。
下锅油炸到金黄~看起来还不错,第一道菜完成。(不过奶油已经融化在锅里了)
虾仁去壳去虾线处理好
放耗油一甩,虾仁下锅炒到表面变成橙粉色。
加入牛奶200毫升,开大火收汁,一直翻炒到大部分牛奶蒸发。(这里我偷偷放了点胡椒粉去腥 算法里没有这一步,但是我害怕做的太难吃浪费粮食)
盛出,表面敷上削成片的芒果条条。第二道菜完成。
萝卜切成块,表面多切几刀入味(我切了小网格的花刀),放一勺盐,煮10分钟。
10分钟后捞出,放进烤箱里上下加热180度20分钟。
拿出来后放进微波炉里热4分钟,完成。
打两个鸡蛋,放200毫升牛奶
我引用的“烹饪单元”里写的是放进料理机打成泥,不过这里随机选择到的食材是牛奶和鸡蛋,它们被料理机打成了泡沫(笑)
这里可以明显看出来泡沫的质感,再放进去一瓣掰碎的柚子。
上锅蒸了十分钟,完成
总共四道菜,来个大合影
这四道菜除了牛奶炒虾仁搭配芒果意外地好吃,其它的我都不建议尝试。不讨厌青椒的可以试试青椒奶油炸五花肉。
如果真的想用这套算法来做饭的话记得用酱油料酒和姜腌一下肉类,没办法,算法不知道肉类要去腥,还是人类比较智能。
小贴士
# coding:utf-8
# 依赖包
import random as r
# 定义数据
a1=[{ 'text': '鸡蛋2个',
'min': 0,
'max':5},
{ 'text': '一根火腿肠,切花刀,',
'min': 5,
'max':20},
{ 'text': '放进料理机打成泥,',
'min': 20,
'max':40},
{ 'text': '低筋面粉500克,揉成面团,',
'min': 40,
'max':50},
{ 'text': '冬瓜洗净,',
'min': 50,
'max':65},
{ 'text': '五花肉凉水下锅,',
'min': 65,
'max':80},
{ 'text': '玉米三根',
'min': 80,
'max':100}
]
a2=[{ 'text': '放一甩蚝油在锅里,',
'min': 0,
'max':10},
{ 'text': '烤箱上下加热180度二十分钟,',
'min': 10,
'max':25},
{ 'text': '加入葱姜花椒,',
'min': 25,
'max':30},
{ 'text': '放进微波炉中火转四分钟,',
'min': 30,
'max':40},
{ 'text': '去皮切块,',
'min': 40,
'max':46},
{ 'text': '两面涂抹烧烤酱,',
'min': 46,
'max':50},
{ 'text': '中火蒸20分钟,关火,焖5分钟,',
'min': 50,
'max':80},
{ 'text': '加一碗凉水,',
'min': 80,
'max':100}
]
a3=[{ 'text': '加入剥皮的柚子三瓣,',
'min': 0,
'max':20},
{ 'text': '水煮十分钟,',
'min': 20,
'max':40},
{ 'text': '涂抹打发好的奶油,',
'min': 40,
'max':75},
{ 'text': '放进泡好的乌龙茶汤一杯,',
'min': 75,
'max':80},
{ 'text': '热水浸泡十分钟,',
'min': 80,
'max':85},
{ 'text': '加入用生抽,糖,料酒,淀粉腌制的肉末,',
'min': 85,
'max':100}
]
# 定义 函数
def random_text(b):
for i in b:
rate = int(0, 100)
# print(rate, ('min'), ('max'))
if rate > ('min') and rate < ('max'):
return ('text')
return ''
# 执行
print ("互联网美食大众选择奖:")
for i in range(0,5, 1):
word1 = random_text(a1)
word2 = random_text(a2)
word3 = random_text(a3)
recipe = word1 + word2 + word3 + word4 + word5
print(recipe)