函数内部函数,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: '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 []

相关文章

功能概要:(目前已实现功能)公共展示部分:1.网站首页展示...
大体上把Python中的数据类型分为如下几类: Number(数字) ...
开发之前第一步,就是构造整个的项目结构。这就好比作一幅画...
源码编译方式安装Apache首先下载Apache源码压缩包,地址为ht...
前面说完了此项目的创建及数据模型设计的过程。如果未看过,...
python中常用的写爬虫的库有urllib2、requests,对于大多数比...