问题:Ruby相当于Python的`s =“你好,%s。%s在哪里?” %(“ John”,“ Mary”)`
在Python中,这种用于字符串格式化的习惯很普遍
s = "hello, %s. Where is %s?" % ("John","Mary")
Ruby中的等效功能是什么?
回答 0
最简单的方法是字符串插值。您可以将少量Ruby代码直接注入您的字符串中。
name1 = "John"
name2 = "Mary"
"hello, #{name1}. Where is #{name2}?"
您也可以在Ruby中格式化字符串。
"hello, %s. Where is %s?" % ["John", "Mary"]
请记住在此处使用方括号。Ruby没有元组,只有数组,并且使用方括号。
回答 1
在Ruby> 1.9中,您可以执行以下操作:
s = 'hello, %{name1}. Where is %{name2}?' % { name1: 'John', name2: 'Mary' }
回答 2
几乎相同的方式:
irb(main):003:0> "hello, %s. Where is %s?" % ["John","Mary"]
=> "hello, John. Where is Mary?"
回答 3
其实差不多
s = "hello, %s. Where is %s?" % ["John","Mary"]