在字符串中输出变量的“正确”方法

Jef*_* H. 4 ruby

我已经看到了很多输出变量的方法。这些方法中哪一种“更好”?

my_name = 'Jeff Hall'
my_height = 74 
puts "Let's talk about %s." % my_name
puts "He's %d inches tall." % my_height
Run Code Online (Sandbox Code Playgroud)

对比

puts "Let's talk about #{my_name}."
puts "He's #{my_height} inches tall." 
Run Code Online (Sandbox Code Playgroud)

另外,在 之后sd代表%什么?

Hau*_*eth 5

除非我需要格式化字符串,否则我更喜欢第二种方式。有关样式的更多问题,请查看GitHub Styleguide for Ruby

关于%s%d。它们是格式化程序,它们的列表在Ruby Kernel::sprintf doc page 上