如何为递归函数添加计数器?[Python]

雅各布斯基

该程序必须用参数中也给出的数字替换列表中的两个数字。我无法更改参数,但也可以创建其他函数。另外,我必须使用递归。到目前为止,我已经弄清楚了如何用递归进行替换,但是我对计数感到困惑。每次尝试时,我似乎都无法仅用“ y”替换前两个出现的“ x”,相反,我总是用“ y”替换每个“ x”。编辑:而且我不能使用全局变量。

def replaceFirstTwo(x,y,lst):
if lst == []:
    return []
else:
    if lst[0] == x:
        return [y] + replaceFirstTwo(x,y,lst[1:])
    else:
        return [lst[0]]+ replaceFirstTwo(x,y,lst[1:])

正确的结果应如下所示:

replaceFirstTwo(1,2,[5,1,2,3,1,1])
[5, 2, 2, 3, 2, 1]
西装

如果x只能是正数,则可以使用负数来表示它是第二次运行该函数。在将x更改为要表示的内容之前,请勿执行任何操作。

我已经修改了您的函数,因此可以执行此操作,但是它将不适用于x的负值,因为xabs(x)将使其为正。

def replaceFirstTwo(x,y,lst):
    if lst == []:
        return []
    else:
        if x is not None:
            if lst[0] == abs(x):
                if x > -1:
                    x = -x
                else:
                    x = None
                return [y] + replaceFirstTwo(x,y,lst[1:])
            else:
                return [lst[0]]+ replaceFirstTwo(x,y,lst[1:])
        else:
            return [lst[0]]+ replaceFirstTwo(x,y,lst[1:])

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何为递归函数添加计数器?[Python]

来自分类Dev

如何添加计数器功能?

来自分类Dev

如何添加计数器以查找 xargs

来自分类Dev

向递归方法内的循环添加计数器-Java

来自分类Dev

向递归方法内的循环添加计数器-Java

来自分类Dev

PHP:如何从递归函数返回值的计数器?

来自分类Dev

如何在django-tables2中添加计数器列?

来自分类Dev

如何在我的JavaScript游戏中添加计数器?

来自分类Dev

如何在SELECT查询中基于几个列添加计数器ID列

来自分类Dev

每次合并新工作表时如何向Excel工作表添加计数器?

来自分类Dev

Python:如何为re.sub()的替换参数添加一个计数器

来自分类Dev

在Python pandas数据框中添加计数器作为附加列

来自分类Dev

添加计数器会删除密钥

来自分类Dev

在增强的for循环中添加计数器

来自分类Dev

在Angular中的html文件上添加计数器

来自分类Dev

为每个组添加计数器列

来自分类Dev

在河内塔上添加计数器Android Andengine APP

来自分类Dev

在Java中在屏幕上添加计数器

来自分类Dev

SQL SERVER STUFF函数值增加计数器

来自分类Dev

递归函数内部的计数器

来自分类Dev

递归函数中的计数器

来自分类Dev

如何通过Cassandra python-driver ORM增加计数器列

来自分类Dev

如何在Ruby循环中增加计数器

来自分类Dev

如何在Ruby循环中增加计数器

来自分类Dev

如何通过单击按钮增加计数器的值?

来自分类Dev

避免在Python循环中增加计数器

来自分类Dev

堆递归质数计数器python

来自分类Dev

如何为自己制作的游戏添加计数系统

来自分类Dev

在何处以及如何添加计数器,并使用它来增加附加列表项的innerText-DOM

Related 相关文章

热门标签

归档