是否有更惯用的方式来表达循环中剩余的迭代次数?

GDP*_*DP2 1 ruby iteration loops idioms

我正在编写一个像这样的Ruby循环:

iterations = 10

until iterations == 0
    unless iterations == 1
      puts "#{iterations} iterations until done"
    else
      puts "#{iterations} iteration until done"
    end

    iterations -= 1
end

puts "Done"
Run Code Online (Sandbox Code Playgroud)

我想知道是否有更多"Ruby方式"来优化/编写此代码.有人有什么想法吗?

Uni*_*key 8

10.downto(1) do |iteration|
  puts "#{iteration} iteration#{'s' if iteration > 1} until done"
end
puts 'Done'
Run Code Online (Sandbox Code Playgroud)