New

烤地瓜 deepseek 导演剪辑版

实现:


from typing import List
from time import sleep


class SweetPotato:
    """
    🎥 导演剪辑版地瓜类
    新增功能:
    1. 完整的烹饪过程记录
    2. 状态变化特效标记
    3. 导演视角的烹饪日志
    """

    def __init__(self, num: int) -> None:
        self.num = num
        self.cooked_state = "生的"
        self.cooked_time = 0
        self.condiments: List[dict] = []  # 现在记录添加时间和佐料
        self.cooking_log: List[str] = []  # 导演专用日志
        self._state_history = []  # 状态变化历史
    
    
    def cook(self, time: int) -> None:
        """🔥 烧烤操作增加特效和过程记录"""
        print(f"\n{'-' * 30}")
        print(f"🍠 地瓜 {self.num} 开始接受 {time} 分钟炙烤...")
    
        prev_state = self.cooked_state
        self.cooked_time += time
    
        # 记录状态变化
        if 0 <= self.cooked_time < 3:
            new_state = "生的"
        elif 3 <= self.cooked_time < 6:
            new_state = "半生不熟"
        elif 6 <= self.cooked_time < 8:
            new_state = "熟了"
        else:
            new_state = "烤糊了"
    
        # 添加状态变化特效
        if new_state != prev_state:
            self._show_state_transition(prev_state, new_state)
            self.cooked_state = new_state
            self._state_history.append((self.cooked_time, new_state))
            self.cooking_log.append(f"⏱️ {self.cooked_time}min:状态变化「{prev_state} → {new_state}」")
        else:
            self.cooking_log.append(f"⏱️ {self.cooked_time}min:持续强化「{self.cooked_state}」状态")
    
        # 模拟烧烤过程
        for t in range(1, time + 1):
            print(f"🔥 火焰特效 | 当前温度:{200 + t * 50}°C", end='\r')
            sleep(0.3)
        print(" " * 30, end='\r')  # 清除特效行
    
    
    def add_condiment(self, condiment: str) -> None:
        """🧂 佐料添加增加电影感"""
        self.condiments.append({
            "time": self.cooked_time,
            "name": condiment
        })
        self.cooking_log.append(f"🧂 {self.cooked_time}min:添加「{condiment}」特写镜头")
        print(f"✨ 电影特效:{condiment}在慢镜头中缓缓洒落...")
    
    def _show_state_transition(self, old: str, new: str) -> None:
        """🎬 状态变化特效"""
        print(f"\n🎞️ 蒙太奇转场:")
        print(f"   旧状态:{old} → 新状态:{new}")
        print("   ░░░░░░░░░░░░░░░░░░░░░░░░")
        print("   ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒")
        print("   ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓")
        print("   🎇 状态变化特效完成!")
    
    def director_log(self) -> str:
        """📽️ 生成导演剪辑版日志"""
        log = [f"\n{'=' * 30}"]
        log.append(f"🎥 《风味地瓜》No.{self.num} 拍摄日志")
        log.append(f"📅 总拍摄时长:{self.cooked_time}分钟")
        log.append("\n🎬 关键帧记录:")
        log.extend(self.cooking_log)
        log.append("\n🍯 佐料添加时间线:")
        for c in self.condiments:
            log.append(f"   🕒 {c['time']}min:{c['name']}")
        log.append(f"\n🎞️ 最终状态:{self.cooked_state}")
        log.append(f"{'=' * 30}")
        return "\n".join(log)
    
    def __str__(self) -> str:
        """🎦 导演版最终呈现"""
        return (f"🍠 地瓜 {self.num} 最终报告:\n"
                f"   🕒 总时长:{self.cooked_time}分钟\n"
                f"   🔥 最终状态:{self.cooked_state}\n"
                f"   🧂 调味组合:{', '.join([c['name'] for c in self.condiments]) or '无'}")


if __name__ == "__main__":
    print("🎬 导演喊:Action!\n")

    # 第一幕:主角地瓜的蜕变
    print("\n=== 第一幕:新生地瓜的觉醒 ===")
    sp1 = SweetPotato(1)
    sp1.cook(2)
    sp1.add_condiment("初酿酱油")
    sp1.cook(3)
    sp1.add_condiment("喜马拉雅岩盐")
    sp1.cook(1)
    sp1.add_condiment("魔鬼辣酱")
    sp1.cook(2)

    # 第二幕:配角地瓜的意外
    print("\n=== 第二幕:命运的岔路口 ===")
    sp2 = SweetPotato(2)
    sp2.cook(1)
    sp2.add_condiment("田园番茄酱")
    sp2.cook(5)
    sp2.add_condiment("轻食沙拉")
    sp2.cook(4)
    sp2.add_condiment("山葵之魂")

    # 最终呈现
    print("\n\n=== 最终成片 ===")
    print(sp1)
    print(sp1.director_log())
    print("\n" + "🌟" * 30 + "\n")
    print(sp2)
    print(sp2.director_log())

    print("\n🎬 导演喊:Cut!")

运行示例:

🎬 导演喊:Action!


🍠 地瓜 1 开始接受 2 分钟炙烤…

🔥 火焰特效 | 当前温度:250°C …

🎞️ 蒙太奇转场:

旧状态:生的 → 新状态:半生不熟

░░░░░░░░░░░░░░░░░░░░░░░░

▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒

▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓

🎇 状态变化特效完成!

✨ 电影特效:魔鬼辣酱在慢镜头中缓缓洒落…

=== 最终成片 ===

🍠 地瓜 1 最终报告:

🕒 总时长:8分钟

🔥 最终状态:烤糊了

🧂 调味组合:初酿酱油, 喜马拉雅岩盐, 魔鬼辣酱

==============================

🎥 《风味地瓜》No.1 拍摄日志

📅 总拍摄时长:8分钟 …

🎬 导演喊:Cut!