gpt4 book ai didi

python - Python 的 range 函数是如何工作的?

转载 作者:IT老高 更新时间:2023-10-28 20:23:27 24 4
gpt4 key购买 nike

如果我写

for i in range(5):
print i

然后它给出 0, 1, 2, 3, 4
这是否意味着 Python 同时为 i 分配了 0、1、2、3、4?
但是,如果我写:

for i in range(5):
a=i+1

然后我调用a,它只给了5
但是如果我添加 ''print a'' 它会给出 1, 2, 3, 4, 5
所以我的问题是这里有什么区别?
i 是字符串还是列表或其他什么?

或者谁能帮我解决一下:

for l in range(5):
#vs,fs,rs are all m*n matrixs,got initial values in,i.e vs[0],fs[0],rs[0] are known
#want use this foor loop to update them
vs[l+1]=vs[l]+fs[l]
fs[l+1]=((rs[l]-re[l])
rs[l+1]=rs[l]+vs[l]
#then this code gives vs,fs,rs

如果我运行这种代码,那么只有当 l=5 时我才会得到答案
我怎样才能让他们开始循环?

即 l=0 得到 vs[1],fs[1],rs[1],
的值然后 l=1 得到 vs[2],rs[2],fs[2]......等等的值。
但是python给出了不同的fs,vs,rs数组,对应不同的l值

我怎样才能使它们成为一体?

最佳答案

在大多数(如果不是全部)编程语言中,“for 循环”是一种多次运行一段代码的机制。

这段代码:

for i in range(5):
print i

可以认为是这样工作的:

i = 0
print i
i = 1
print i
i = 2
print i
i = 3
print i
i = 4
print i

所以你看,发生的事情不是 i同时获得值 0、1、2、3、4,而是按顺序获得。 p>

我假设当你说“调用 a,它只给出 5”时,你的意思是这样的:

for i in range(5):
a=i+1
print a

这将打印给定 a 的 last 值。每次循环迭代时,语句 a=i+1 将用新值覆盖 a 的最后一个值。

代码基本上是按顺序运行的,从上到下,for 循环是一种使代码返回并再次执行某些操作的方法,其中一个变量具有不同的值。

我希望这回答了你的问题。

关于python - Python 的 range 函数是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1738109/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com