加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

函数内部函数,python递归列表

发布时间:2020-12-20 11:48:19 所属栏目:Python 来源:网络整理
导读:def minimizeMaximumPair(lst): lst.sort() def compute(aList): if len(aList) != 0: return [(aList[0],lst[len(aList) - 1])].extend(compute(aList[1:len(aList) - 1])) return [] return compute(lst) 当我得到最后一个递归步骤时,我得到一个 TypeError
def minimizeMaximumPair(lst):
    lst.sort()

    def compute(aList):
        if len(aList) != 0:
            return [(aList[0],lst[len(aList) - 1])].extend(compute(aList[1:len(aList) - 1]))
        return []

    return compute(lst)

当我得到最后一个递归步骤时,我得到一个

TypeError: 'NoneType' object is not iterable

我试着什么都没回来,而且[]

解决方法

而不是list.extend返回None,你可以使用list .__ iadd__

__iadd__也将列表扩展到位,但之后返回列表

如果您厌恶使用特殊方法,可以使用运算符模块中的iadd

from operator import iadd

...

def compute(aList):
    if len(aList) != 0:
        return iadd([(aList[0],aList[-1])],compute(aList[1: -1]))
    return []

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读