Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
迭代器函数python_Python_Loops - Fatal编程技术网

迭代器函数python

迭代器函数python,python,loops,Python,Loops,我正试图弄清楚如何在python中生成一个iterable函数,因为我是新来的,我希望能得到任何帮助,以下是我的代码: cra_initial = cra_func(a,b,c) def cra(cra_initial): cra_annum = (cra_initial /7) *365 'and so on some code contains a, b, c variables above' cra_adjusted = cra_func(a,b,c) 正如您在代码的最

我正试图弄清楚如何在python中生成一个iterable函数,因为我是新来的,我希望能得到任何帮助,以下是我的代码:

cra_initial = cra_func(a,b,c)
def cra(cra_initial):
   cra_annum = (cra_initial /7) *365
   'and so on some code contains a, b, c variables above'
   cra_adjusted = cra_func(a,b,c)

正如您在代码的最后一行所看到的
cra_adjusted
正在使用第一行中使用的相同函数
cra_initial
,我想得到
cra_adjusted
的结果,并将其用作
cra
函数中的参数,大约是iterable

的20倍,我想这段代码会对您有所帮助

i=1

def cra_func(a,b,c):
    return (a+b+c)

def cra(cra_initial):
    global i
    cra_annum = (cra_initial /7) *365
    print(cra_annum)
    a,b,c=1,2,3
    cra_adjusted = cra_func(a,b,c)
    i+=1
# This condition will make cra() func run 20 times
    if i<21:
        cra(cra_adjusted)

if __name__=='__main__':
    a,b,c=1,2,3
    cra_initial = cra_func(a,b,c)
    cra(cra_initial)
i=1
def cra_func(a、b、c):
返回(a+b+c)
def cra(cra_首字母):
全球i
cra_年=(cra_首字母/7)*365
印刷品(年刊)
a、 b,c=1,2,3
cra_调整=cra_func(a、b、c)
i+=1
#此条件将使cra()func运行20次

如果我我在这里找到了一个简单的方法

cra_initial = cra_func(a,b,c)
def cra(cra_initial):
    for i in range (1,20):
       cra_annum = (cra_initial /7) *365
      'and so on some code contains a, b, c variables above'

       cra_adjusted = cra_func(a,b,c)
       cra_initial = cra_adjusted

它更有效

你能提供一个更清晰的答案吗?我想现在这个问题是关于尾部递归,而不是关于迭代器。我想问的是,它是否可以通过迭代来完成,如果不能,那么必须使用什么样的递归变量请不要破坏你的帖子,为其他人做更多的工作。通过在Stack Exchange网络上发布,您已根据授予Stack Exchange分发该内容的不可撤销权利(即,无论您未来的选择如何)。根据堆栈交换策略,帖子的非破坏版本是分发的版本。因此,任何故意破坏行为都将恢复原状。如果您想了解有关删除帖子的更多信息,请参阅: