首页 > 解决方案 > 将 For 循环转换为函数 python 和函数参数说明

问题描述

我在https://www.youtube.com/watch?v=rN2NNUqN1Fcpython 考试之前关注这个视频进行修订,在 25 分钟后,他将 a 转换while loop为 a for loop,所以我想我会尝试将其转换for loop为 afunction但我遇到了障碍。

这是原始的for循环:

for row in range (5,0, -1):
    for item in range(row,0, -1):
        print(item*2, end =' ')
    print("")

而我尝试过的:

def triangle(row):
    row = 0
    for row in range (5,0, -1):
        for item in range(row,0, -1):
            newrow = row +1
            return item*2
            return newrow
            return triangle(newrow)

newrow = triangle
print(triangle(newrow))

我没有收到任何错误,但它只打印出 10。

我希望澄清这些论点,因为我不完全确定他们在5,0, -1做什么for row in range 以及row, 0, -1在做什么for item in range

我认为是5乘以range 0-52 时returning items*2 ,我认为打印了0多少,每次有新行时,有多少数字被放入-1?rows-1row

然后在范围内的项目 - >我有点迷路

另外我觉得有一种方法可以通过以 2 为单位从 10 减少可能会更好?不是很重要,但很高兴知道另一种迭代方式。

我已经阅读并观看了有关创建函数、定义变量和创建循环的视频,但它并没有变得更清晰,我认为我需要一个 ELI5,因为我对此感到非常愚蠢。

标签: pythonfunctionloopsfor-loop

解决方案


要将其转换为函数,请在函数中插入代码:

def triangle():
    for row in range (5,0, -1):
        for item in range(row, 0, -1):
            print(item*2, end =' ')
        print("")
triangle()

(5,0,-1) 是给你从 5 到 1 的值,递减。要查看这一点,请运行以下代码:

for row in range(5,0,-1):
    print(row)

推荐阅读