python - 如何创建一个循环,直到重复原始值?
问题描述
我正在读取一系列值,例如 4、5、5、6、6、6、7、6、4、5、6、7、6、5
第一个值将始终为 4,其他值将始终 >4,直到达到另一个 4。我想继续循环,但在到达下一个 4 之前停止。
所以我想要的输出是:4、5、5、6、6、6、7、6
for value in list:
print(value)
我确定这很简单,但我想不出停止循环的逻辑
for value in list:
print(value)
if value == 4:
break
如果我这样做,它当然会停在前 4 个。如何让逻辑忽略前 4 个并且仅在第一个循环周期后应用 value == 4 时?
解决方案
我能弄清楚的最简单的逻辑。使用标志,如果满足值则设置它,但首先检查是否已设置。
lst = [4, 5, 5, 6, 6, 6, 7, 6, 4, 5, 6, 7, 6, 5]
four_met = False
for e in lst:
if e == 4:
if four_met:
break
four_met = True
print(e)
推荐阅读
- image - 文档图像字符补丁识别中的最大稳定极值区域 (MSER) 实现
- aframe - aframe 禁用设备传感器弹出
- scala - Spark将数据帧写入vertica给出错误
- flutter - 旋转时图像溢出
- javascript - 下一个异步函数
- flutter - Flutter - 位置参数太多
- python - 如何在我的 python 脚本中设计一个非静态路径?
- search - ldapsearch 用于 Active Directory 搜索
- angularjs - navigator.mediaDevices 仅在 AngularJs 控制器中未定义
- android - 从某个设备上删除应用程序时,有什么方法可以发送 REST 请求?