Sprintf与Ruby相比

问题描述 投票:-1回答:1

为什么sprintf不输出函数,但puts会?

irb(main):001:0> 3.times {|i| sprintf("%s", i.to_s)}
=> 3
irb(main):002:0> 3.times {|i| puts i}
0
1
2
=> 3

documentation for puts说这是stdout。为什么sprintf也不会去stdout?

使用Ruby 2.5.0。

ruby
1个回答
6
投票

sprintf返回格式化的字符串,而不是在任何地方打印。查看http://ruby-doc.org/core/Kernel.html#method-i-sprintf的文档。

您可能正在寻找printf

© www.soinside.com 2019 - 2024. All rights reserved.