python - 每第二次迭代增加一个值
问题描述
我想每第二次迭代将一个值增加一个固定值。上面的代码解决了这个问题,但我想知道这个问题是否有更好的解决方案?在我的现实世界问题中,数据集更大,编写 if 语句可能不是一个有效的解决方案。我可以更好地使用计数吗?
iter= range(6)
start = 0.25
increase = 0.01
for count, i in enumerate(iter):
print(count)
if count in [1,3,5]:
start = start + increase
print(start)
解决方案
您可以使用%
告诉您它是偶数还是奇数的运算符:
print(1%2) # 1
print(2%2) # 0
print(3%2) # 1
print(4%2) # 0
print(5%2) # 1
在这种情况下,您使用计数器:
for count, i in enumerate(iter):
print(count)
if count % 2: # It gives only 1 or 0
start += increase
print(start)
推荐阅读
- verilog - 如何按索引访问打包结构中的元素?
- php - php配置文件用户名显示在web url上
- python - 如何在python中使用input()函数提取csv数据
- scala - 使用 State Monad 实现存储库(同时使用 IO 和 State)
- javascript - PopupCenter 打开的按钮不回发
- java - 注入的 Bean 在抽象类中为空
- c# - 将 EPOS 转换为 ESC/POS c#
- python - UUID4 的较短版本
- xamarin.forms - TK 自定义地图多边形 Xamarin 表单
- orientdb - 在 OrientDB 中使用 OUT() 返回连接节点的属性而不是 RID