You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python随机食谱生成器开发:如何复用随机食材到对应烹饪步骤

Python随机食谱生成器修复方案

问题根源

原有代码没有存储生成的食材清单内容,生成步骤时使用的是提前仅随机1次的固定食材变量,和清单内食材完全不匹配。

修复后完整代码

import random

# 素材库:内置26种食材、10种烹饪操作
amounts = ["50g", "70g", "90g", "143g", "150g", "180g", "200g", "235g", "300g", "320g", "350g", "386g", "400g", "433g", "462g"]
ingredients = ["鸡蛋", "白糖", "盐", "黄油", "牛奶", "培根", "番茄", "意面", "大米", "土豆", "洋葱", "胡萝卜", "中筋面粉", "面条", "芝士", "鸡肉", "牛肉", "菠菜", "草莓", "苹果", "蓝莓", "橄榄油", "生抽", "玉米", "虾", "蛋黄酱"]
cooking_phrases = ["取一个中等大小的碗,混合搅拌", "取一口大锅开中火,翻炒", "取煎锅,煎香", "取一口汤锅,煮沸", "充分清洗", "切成薄片", "切成1英寸见方的小丁", "设置微波炉定时1分钟,加热", "用料理机充分搅打", "放入350°F(约175℃)烤箱烘烤20分钟,烤制"]

def generate_single_ingredient():
    """生成单条带用量的食材,同时返回纯食材名用于后续步骤拼接"""
    selected_quantity = random.choice(amounts)
    selected_ing = random.choice(ingredients)
    # 移除已选食材,避免同一食谱出现重复食材
    ingredients.remove(selected_ing)
    return f"{selected_quantity} {selected_ing}", selected_ing

def generate_single_step(cooking_phrase, ing_name):
    """拼接烹饪操作和对应食材,生成单条制作步骤"""
    return f"{cooking_phrase} {ing_name}。"

if __name__ == "__main__":
    # 存储本次生成的所有食材,保证清单和步骤食材完全一致
    full_ing_list = []
    pure_ing_name_list = []
    # 生成5种不重复食材
    for _ in range(5):
        full_ing, pure_ing = generate_single_ingredient()
        full_ing_list.append(full_ing)
        pure_ing_name_list.append(pure_ing)
    
    # 输出食材清单
    print("=== 食材清单 ===")
    for ing in full_ing_list:
        print(f"- {ing}")
    
    # 输出制作流程
    print("\n=== 制作流程 ===")
    # 随机取5种不重复的烹饪操作
    selected_phrases = random.sample(cooking_phrases, 5)
    for idx in range(5):
        step_content = generate_single_step(selected_phrases[idx], pure_ing_name_list[idx])
        print(f"{idx+1}. {step_content}")

主要修改点

  • 新增食材存储逻辑:生成食材时同时保存带用量的完整内容和纯食材名,保证步骤调用的食材和清单100%一致
  • 优化函数设计:两个自定义函数职责明确,去除原有代码中无意义的入参
  • 增加去重逻辑:同一食谱内不会出现重复的食材和重复的烹饪操作
  • 适配中文使用习惯:所有食材、烹饪短语都翻译为中文,输出格式清晰易读
  • 完全符合设计规范:内置26种食材、10种烹饪操作,用量统一以g为单位,函数结构清晰

内容的提问来源于stack exchange,提问作者Anna Li

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.18 17:15:03