为什么排序此列表在外部工作但不在函数内部?

时间:2014-07-15 18:10:25

标签: python list sorting

我有以下功能

def resample(series, maxerror):

  output = []
  process(series, maxerror, output)

  return output

我从另一个这样的文件中调用它,然后对其进行排序

fdata = compression.resample(cdata[xn:end], 0.08)
fdata.sort(key=lambda x: x[0])

这很有效。但是,当我尝试在返回输出之前将排序行放入函数本身时,它不起作用....为什么不呢?

1 个答案:

答案 0 :(得分:1)

我强烈猜测你正在做return output.sort(key=lambda x: x[0]list.sort始终返回None,因为它就位。

取而代之的是

return sorted(output, key=lambda x: x[0])

可替换地:

output.sort(key=lambda x: x[0])
return output