导语:
本文主要介绍了关于Python中for循环的动态范围的相关知识,包括java中for循环作用,以及for循环中可以省略的部分这些编程知识,希望对大家有参考作用。
for循环语句前面已经讲过了,今天我们就来看看如何
for循环中
建立动态范围吧。
我正在迭代一个列表,元素可以在迭代过程中添加到这个列表中。所以问题是循环只迭代了这个列表的原始长度。
代码:
<p><span>i = 1
for p in srcPts[1:]: # skip the first item.
pt1 = srcPts[i - 1]["Point"]
pt2 = p["Point"]
d = MathUtils.distance(pt1, pt2)
if (D + d) >= I:
qx = pt1.X + ((I - D) / d) * (pt2.X - pt1.X)
qy = pt1.Y + ((I - D) / d) * (pt2.Y - pt1.Y)
q = Point(float(qx), float(qy))
# Append new point q.
dstPts.append(q)
# Insert 'q' at position i in points s.t. 'q' will be the next i.
srcPts.insert(i, {"Point": q})
D = 0.0
else:
D += d
i += 1<br/></span></p>
我已经尝试在范围内使用 for i(1,len(srcPts)) :但是,即使将更多项目添加到列表中,范围也保持不变。
问题是当你将 len(srcPts) 作为参数传递给范围生成器时,它只计算一次。因此,你需要有一个终止条件,在每次迭代中重复计算srcPts的当前长度。有很多方法可以做到这一点,例如:
<p><span>while i < len(srcPts):
....<br/></span></p>
以上就是python中for循环中建立动态范围的方法。更多Python学习推荐:
。
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ Python缩进和选择详解12/23
- ♥ python如何判断用户是否登录?10/07
- ♥ 如何使用python的时间函数09/28
- ♥ python中的导入是什么08/15
- ♥ 如何在python中删除列表09/04
- ♥ python多进程中如何优化进度条的显示10/19
内容反馈