解释跑三次的代价

👁️ 2 人浏览 💬 0 人评论 ❤️ 添加收藏

按模型,cost("interp", 3) 交回几?

执行方式模型:解释执行边读边跑;字节码先编译一次、之后重复跑更省。cost(方式, runs):解释每次都解释 = 2*runs,字节码 = 1+runsfaster_bytecode(runs)=字节码是否更快。

def is_interp(model):
    """是不是解释执行(逐条解释着跑)。"""
    return model == "interp"


def compile_once(model):
    """字节码模型:先编译一次、之后重复跑更省。"""
    return model == "bytecode"


def cost(model, runs):
    """跑 runs 次的总代价:解释每次都解释 = 2*runs;字节码编译 1 次 + 每次跑 = 1 + runs。"""
    return 2 * runs if model == "interp" else 1 + runs


def faster_bytecode(runs):
    """跑 runs 次时,字节码是不是比解释更快(1+runs < 2*runs)。"""
    return 1 + runs < 2 * runs

print(cost("interp", 3))
提交你的答案
请登录后提交答案。
去登录
代码编辑器
Ctrl + Enter 运行
本次输入:
输出:

                        
👩‍🏫
AI
💬 题目评论

全部评论