了解迭代

时间:2018-07-06 06:29:16

标签: python

我刚刚开始学习python基础知识。通过python基础知识,我陷入了这种迭代算法中,但我不知道它是如何工作的。我知道这很简单,但是作为一个新程序员,我没有每天编写代码的爱好。

这是代码

for i in inputlist:
    if i > outputlist[-1]:
        outputlist.append(i)

return outputlist

什么是输出列表实际上在做什么-1在那里

1 个答案:

答案 0 :(得分:1)

此代码正在逐个遍历inputlist元素,如果i中的当前元素inputlist大于outputlist中的最后一个元素,则{{1 }}将附加到输出列表。

i将是outputlist的递增子序列。

我认为代码可以是这样的:

inputlist

语法def f(inputlist): outputlist = [] if inputlist: outputlist.append(inputlist[0]) for i in inputlist: if i > outputlist[-1]: outputlist.append(i) return outputlist 获取outputlist[-1]的最后一个元素。在大多数其他语言中,它等同于outputlist(考虑从0开始的列表索引)。

正如评论中正确指出的,outputlist[len(outputlist) - 1]开头不能为空,否则我们将得到outputlist