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

PCAP练习题函数定义存疑:语法错误代码为何输出3?

PCAP练习题函数参数语法问题及答案推导
  • 先明确:Python里绝对不允许用字面量整数1作为函数的形参名,比如def f(1): ...这种写法会直接触发SyntaxError,你的判断完全正确,这个函数定义本身不符合语法规范。
  • 结合官方给出的答案是3,基本可以确定题目存在笔误。最常见的可能性是把参数名写错了——比如把小写字母l(视觉上和1很像)或者带默认值的参数x=1误写成了1。
  • 按照答案反推,合理的代码逻辑应该是这样的:
    比如用lambda函数的场景:
    f = lambda x: x + 2
    print(f(1))  # 输出3
    
    或者带默认参数的普通函数:
    def f(x=1):
        return x + 2
    print(f())  # 输出3
    
    这两种情况的运行结果都和官方答案匹配,符合你说的lambda函数逻辑。
  • 也有可能是题目把“实参为1”的描述写错成了“形参为1”,毕竟实参传1是完全合法的,结合lambda的运算就能得到3。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 16:22:04