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

JavaScript函数对象字面量的Python等价实现咨询

等价的Python实现方案

当然可以!Python里函数是一等公民,你可以用字典来实现和你给出的JavaScript构造完全等价的效果——把函数作为值存在字典中,然后通过键名来访问并调用它们。

方式1:使用lambda表达式(适合短函数)

这种写法和你JS里的匿名函数风格最接近:

my_functions = {
    'greet': lambda name: f"Hello, {name}",
    'farewell': lambda time: f"See you {time}"
}

调用方式完全符合你的需求:

greet_marta = my_functions['greet']("Marta")
print(greet_marta)  # 输出: Hello, Marta

see_you_tomorrow = my_functions['farewell']("tomorrow")
print(see_you_tomorrow)  # 输出: See you tomorrow

方式2:使用常规函数定义(适合复杂逻辑)

如果你的函数需要处理更复杂的逻辑,用def定义会更清晰,之后把函数对象直接存入字典即可:

def greet(name):
    return f"Hello, {name}"

def farewell(time):
    return f"See you {time}"

my_functions = {
    'greet': greet,
    'farewell': farewell
}

调用方式和上面完全一致,没有任何区别。

补充说明

Python的字典和JS的对象在这个场景下的行为几乎一致:你可以通过['键名']的方式获取对应的函数,紧接着加括号传参就能完成调用,和你在JS里的操作逻辑完全匹配。

内容的提问来源于stack exchange,提问作者Manuel Perez Heredia

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 04:05:06