Как я могу использовать "puts" на консоли без разрыва строки в ruby на рельсах?
У меня есть метод, который проходит через цикл - я хочу, чтобы он выводил ".". каждый цикл, чтобы я мог видеть его в консоли. однако, это pus linebreak в конце каждого, когда я использую puts ".".
Если есть способ, чтобы он имел сплошную линию?
Ответ 1
Вам нужно использовать печать вместо puts. Кроме того, если вы хотите, чтобы точки отображались плавно, вам нужно очистить буфер stdout после каждой печати...
def print_and_flush(str)
print str
$stdout.flush
end
100.times do
print_and_flush "."
sleep 1
end
Изменить: я просто искал рассуждения за флешем, чтобы ответить на комментарий @rubyprince, и понял, что это можно немного почистить, просто используя $stdout.sync = true...
$stdout.sync = true
100.times do
print "."
sleep 1
end