Python中如何每隔10次迭代循环更改变量值?
解决Python循环中每隔10次迭代更改值的问题
你可以利用Python的**整数除法(//)**实现需求,通过迭代索引计算对应x值,具体代码如下:
方法一:基于索引范围循环
myList = ["One", "Two", "Three", ..., "Thirty"] # 注意:集合无序,若需按顺序处理请改用列表 listLength = len(myList) # 结果为30 listRange = range(listLength) # 生成0到29的索引范围 for i in listRange: # 每10次迭代x增加10:0-9→10,10-19→20,20-29→30 x = (i // 10 + 1) * 10 ops.mesh.add(size=2, location=(x, 0, 0)) # 补充y/z坐标,适配location的三维参数要求
方法二:直接迭代元素并获取索引
如果要同时处理集合(或列表)中的元素,可用enumerate获取迭代索引:
myList = ["One", "Two", "Three", ..., "Thirty"] for idx, item in enumerate(myList): x = (idx // 10 + 1) * 10 ops.mesh.add(size=2, location=(x, 0, 0))
关键逻辑说明
整数除法i // 10会将索引按10为一组划分:
- 索引0-9时,
i//10结果为0,加1乘10得到x=10 - 索引10-19时,
i//10结果为1,加1乘10得到x=20 - 索引20-29时,
i//10结果为2,加1乘10得到x=30
注意:原代码使用集合{},Python集合是无序的,迭代顺序不会和定义的"One"到"Thirty"一致,若需固定顺序处理元素,建议将myList改为列表[]。
内容的提问来源于stack exchange,提问作者luke jon
相关产品推荐
相关产品推荐

