创建函数,向范围添加参数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建函数,向范围添加参数相关的知识,希望对你有一定的参考价值。

我是编程的新手(刚刚学到了什么命令行);没有以前的经验,只是发现这个网站,所以借口任何格式错误。

我真的很想为函数添加参数。具体来说,我需要为我创建的函数添加一个参数,在该函数中我返回一个增量为5的范围。由于超出我当前技能水平的原因(但对你们来说很明显,我确定),我无法使用用我的fname函数中的51替换101的主要功能。本质上,我必须给fname一个参数作为范围的上端。从main函数,我必须将值101传递给fname函数,以便fname将[0,5,10,...,100]返回到main函数,main函数将其打印到屏幕。

def fname(arg1):
    """this function will compute a range from 0 to 50 in increments of 5"""
    result = list(range(0, 51, 5))
    return result


def main():
    arg1 = list(range(0, 101, 5))
    from_fname_function = fname(arg1)
    print(from_fname_function)

if __name__ == '__main__':
    main()

任何帮助(详尽的解释)将不胜感激。我找到了很多关于如何在函数中使用参数的资源,但我无法弄清楚如何以这种方式更改范围内的最大限制。

答案

请注意,您没有使用已在函数体中添加的参数。从文档字符串来看,我假设您希望使范围的上边界灵活。请尝试沿着以下几行:

def fname(arg1):
    # actually use the argument to build the range
    result = list(range(0, arg1, 5))  
    return result

def main():
    arg1 = 101
    from_fname_function = fname(arg1)
    print(from_fname_function)
另一答案

我认为您正在寻找的技巧是让函数fname能够返回从零开始并以5为增量的列表,直到您选择的任何限制。你真的很亲密;你只需要在制作范围时使用参数arg1,如下所示:

def fname(arg):
    return list(range(0, arg, 5))

现在您可以使用该函数创建许多不同的列表:

def main():
    print(fname(51))      # this will print [0, 5, 10, ..., 50]
    print(fname(101))     # this will print [0, 5, 10, ..., 100]
    print(fname(10))      # this will print [0, 5]

函数参数的概念是它们允许您创建一个可以在不同时间使用不同值执行某些操作的函数。因此,如果您希望从零开始生成以5为增量的列表,并且您希望对不同的结束值执行此操作,那么您将限制作为参数(因为这是更改的部分),并使用参数功能正确的地方。

希望有所帮助!

另一答案
def fname(start, end, inc):
    return list(range(start, end, inc))

print(fname(0,51,5))

在上面的代码中,函数fname返回从'start'到'end'的值列表,其中增量为'inc'

上:[0,5,10,15,20,25,30,35,40,45,50]

以上是关于创建函数,向范围添加参数的主要内容,如果未能解决你的问题,请参考以下文章

教程4 - 验证和权限

向元素添加点击事件?

Android:向活动添加片段

如何向函数回调添加额外参数

为啥添加范围解析参数后代码可以工作?

Google Maps initMap 向函数添加参数