将哈希转换为字符串的最短方法

时间:2012-11-01 07:03:25

标签: ruby

有一个像这样的哈希:

params = { k1: :v1, k2: :v2, etc: :etc }

我需要将它转换为这样的字符串:

k1="v1", k2="v2", etc="etc"

我有一个工作版本:

str = ""
params.each_pair { |k,v| str << "#{k}=\"#{v}\", " }

但它闻起来像十个PHP精神......

Ruby的方法是什么?

2 个答案:

答案 0 :(得分:4)

试试这个:

str = params.map {|p| '%s="%s"' % p }.join(', ')

在行动here

中查看

答案 1 :(得分:0)

试试这个......

hash.collect { |k,v| "#{k} = #{v}" }.join(" ,")