为了账号安全,请及时绑定邮箱和手机立即绑定

函数返回 None,但打印结果

函数返回 None,但打印结果

慕斯王 2021-10-12 17:29:16
def maximum(arr):    if len(arr) == 1:        return arr[0]    else:        if arr[0] > arr[1]:            del arr[1]            maximum(arr)        elif arr[0] <= arr[1]:            del arr[0]            maximum(arr)print(maximum([2, 2]))如果我改变return arr[0]用print(arr[0])它打印出2,但由于某些原因,如果我写返回None return arr[0]。我也尝试返回整个数组,因为数组总是 1 个元素长,但这并没有改变任何东西并且仍然返回 None。
查看完整描述

1 回答

?
慕侠2389804

TA贡献1719条经验 获得超6个赞

您需要返回递归调用


def maximum(arr):

    if len(arr) == 1:

        return arr[0]

    else:

        if arr[0] > arr[1]:

            del arr[1]

            return maximum(arr)

    elif arr[0] <= arr[1]:

        del arr[0]

        return maximum(arr)


查看完整回答
反对 回复 2021-10-12
  • 1 回答
  • 0 关注
  • 156 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信