python - 将 For 循环转换为函数 python 和函数参数说明
问题描述
我在https://www.youtube.com/watch?v=rN2NNUqN1Fc
python 考试之前关注这个视频进行修订,在 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-5
2 时returning items*2
,我认为打印了0
多少,每次有新行时,有多少数字被放入-1?rows
-1
row
然后在范围内的项目 - >我有点迷路
另外我觉得有一种方法可以通过以 2 为单位从 10 减少可能会更好?不是很重要,但很高兴知道另一种迭代方式。
我已经阅读并观看了有关创建函数、定义变量和创建循环的视频,但它并没有变得更清晰,我认为我需要一个 ELI5,因为我对此感到非常愚蠢。
解决方案
要将其转换为函数,请在函数中插入代码:
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)
推荐阅读
- spring-boot - Spring Security 和 Azure - 重新启动后,应用程序尝试重新授权,但 Azure 重定向到 redirect-uri 导致 404
- java - Android前台服务通知未显示在状态栏中
- node.js - BodyParser 不使用 POSTMAN 解析请求
- loops - Jinja2在没有命名空间的循环外设置变量字符串
- r - 随机森林错误消息 - 响应具有五个或更少的唯一值
- python-3.x - 如何将值从一个移动到另一行/列
- text - 如何从 Flutter TextBox 中获取原始文本
- linux - 使用 sed,grep 在特殊字符之间打印
- javascript - 道具验证中缺少功能组件中的道具
- swift - 尝试从 aws s3 存储桶下载图片时访问被拒绝