ruby - 从顶部重新启动循环
问题描述
我有以下内容:
text_counter = 0
MAXTEXT_COUNTER = 10
puts "hello, this will start"
loop do
puts "hello"
text_counter += 1
sleep(2)
if text_counter >= MAXTEXT_COUNTER
break
end
end
sleep(7200)
print "ended test"
一旦break
发生,我怎样才能让它从头开始?
我现在想我可以将此循环嵌套until
在条件为的循环中text_counter == 1000
。这会中断,然后睡 2 小时,然后重新开始,直到达到 1000。
解决方案
看起来你需要一个循环中的循环,你重复一次 N 次,其他 M 次:
MAXTEXT_COUNTER = 10
puts "hello, this will start"
loop do
MAXTEXT_COUNTER.times do
puts "hello"
sleep(2)
end
print "ended test"
sleep(7200)
end
外环是永久的。内部的运行一定次数并停止使用该times
方法。
推荐阅读
- git - 在 Windows 上找不到 git-upload-pack 命令
- python - 如何从 Heroku 获取 Postgresql 配置参数?
- sql - 我写了程序,只填了一栏,告诉我错误在哪里?
- windows - 如何使用 wGet 获取文件而不是 url
- laravel - 如何在 laravel eloquent 查询中使用数学函数?
- reactjs - 无法读取未定义的属性“问题”
- architecture - 在分布式架构中使用 DDD 聚合服务?
- kubernetes - 如何在 kubernetes 中运行的 eclipse che 工作区中挂载卷?
- docker - 如何从一个 docker 镜像连接到另一个 docker 镜像的端口?
- python - Pandas Dataframe:在具有相同类别的不同现有数据帧上使用相同的类别代码