从000开始增加一个计数器

时间:2018-08-08 20:57:15

标签: ruby

通常,当您想要一个柜台时,可以执行以下操作:

["a","b","c"].each.with_index(0) do |_case, i|
  puts i
end
=> 0
=> 1
=> 2

我们从0开始递增。0在Ruby中表示为Fixnum。  000在Ruby中也表示为Fixnum。但是我需要增加为000,001,002,003等。但是相反,它从000增加到1:

["a","b","c"].each.with_index(000) do |_case, i|
  puts i
end
=> 0
=> 1
=> 2

我如何将000递增为001,002,003等?

2 个答案:

答案 0 :(得分:0)

您可以使用格式化的打印功能printf and sprintf

["a","b","c"].each_with_index { |_case, i| printf("%03d\n", i) }
000
001
002

答案 1 :(得分:0)

如果目标是打印带填充数字,那么Ruby可以使用字符串范围为您完成此操作。几种方法可以做到这一点:

puts ('001'..'005').to_a

('001'..'005').each { |n| puts n }

puts ('001'..'999').take(5)

所有打印:

#001
#002
#003
#004
#005