Ruby打印哈希键和值

时间:2013-09-24 19:45:27

标签: ruby hash each

我正在尝试打印键:值 目前,当我尝试运行代码时,我一直收到错误。

代码:

output.each do |key, value|
    puts key + ' : ' + value
end

我想不出办法在同一条线上做到这一点。我尝试了各种实现,比如使用<<符号。我也玩过print,使用多个put语句,并将这两个值附加到字符串中并打印出来。

1 个答案:

答案 0 :(得分:24)

根据Hash的内容,您可能需要将key转换为字符串,因为它可能是一个符号。

puts key.to_s + ' : ' + value

或者,我建议做什么,使用字符串插值:

puts "#{key}:#{value}"

如果key确实不是字符串,则收到错误的原因是因为它试图在+上调用方法key。如果它没有+方法,您将收到错误。