urall. 2022-03-23 21:10 采纳率: 62.5%
浏览 35
已结题

求解答 python好难🤯!

不明白 def addop(f,a,b)的f指的是啥,然后lambda后面知道大约的写法 但是后面的两个参数又给我搞懵了😇

img

  • 写回答

3条回答 默认 最新

  • 木易荆岑 2022-03-23 21:37
    关注

    f就是你要传递给他的lambda表达式

    def addIt(a, b):
        if a > b:
            return 0
        else:
            return a + addIt(a + 1, b)
    
    
    print(addIt(1, 4))
    
    def addSquare(a,b):
        if a>b:
            return 0
        else:
            return a*a+addSquare(a+1,b)
    
    
    print(addSquare(1, 4))
    
    def addCube(a,b):
        if a>b:
            return 0
        else:
            return a**3+addCube(a+1,b)
    
    
    print(addCube(1,4))
    
    def addOp(f,a,b):
        if a > b:
            return 0
        else:
            return f(a,b)
    print(addOp(lambda a,b:addIt(a,b),1,4))
    print(addOp(lambda a,b:addSquare(a,b),1,4))
    print(addOp(lambda a,b:addCube(a,b),1,4))
    

    结果
    10
    30
    100
    10
    30
    100

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月31日
  • 已采纳回答 3月23日
  • 创建了问题 3月23日

悬赏问题

  • ¥15 iOS 自定义输入法-第三方输入法
  • ¥15 很想要一个很好的答案或提示
  • ¥15 扫描项目中发现AndroidOS.Agent、Android/SmsThief.LI!tr
  • ¥15 怀疑手机被监控,请问怎么解决和防止
  • ¥15 Qt下使用tcp获取数据的详细操作
  • ¥15 idea右下角设置编码是灰色的
  • ¥15 全志H618ROM新增分区
  • ¥15 在grasshopper里DrawViewportWires更改预览后,禁用电池仍然显示
  • ¥15 NAO机器人的录音程序保存问题
  • ¥15 C#读写EXCEL文件,不同编译