Pyschools:编写递归函数,返回参数a到b的数字

2024-05-19 14:00:21 发布

您现在位置:Python中文网/ 问答频道 /正文

编写一个递归函数numbersInbetween(start,end),它接受两个数字,并返回一个公共的分隔字符串,起始和结束之间的所有数字都包含这两个数字。在

我的尝试:

def numbersInbetween(a, b):
    if  b == 0:
        return "Invalid"
    if a == b:
        return '%d' % (a)
    else:
        return '%s,%s' % (a, numbersInbetween(a+1,b))

所有输入都返回预期结果,但是pyschools返回“私有测试用例失败”。在

请你指出我的错误,我已经尝试了很多不同的方法,但收效甚微。谢谢


Tags: 方法字符串returnifdef错误测试用例数字
1条回答
网友
1楼 · 发布于 2024-05-19 14:00:21

看起来here,你的问题似乎在这里:

if b == 0:

如果输入b作为小于a的非零值:

^{pr2}$

因此,将if b == 0更改为if b < a

def numbersInbetween(a, b):
    if b < a:
        return "Invalid"
    if a == b:
        return '%d' % (a)
    else:
        return '%s,%s' % (a, numbersInbetween(a+1,b))

相关问题 更多 >