我需要有一个哈希来收集结果,例如:
results = Hash.new()
results['127.0.0.1'] = Hash.new()
results['127.0.0.2'] = Hash.new()
results['127.0.0.1']['port'] = '80'
results['127.0.0.2']['port'] = '80'
results['127.0.0.1']['ver'] = 'abc'
results['127.0.0.1']['ver'] = 'def'
它似乎工作正常,但现在我可以显示结果吗? :) 我想要:
ip: 127.0.0.1
port: 80
ver: abc
ip: 127.0.0.2
port: 80
ver: def
非常感谢!
答案 0 :(得分:2)
定义哈希的更好方法:
result = {
'127.0.0.1' => {
port: 80,
ver: 'abc'
},
'127.0.0.2' => {
port: 80,
ver: 'def'
}
}
然后:
result.each do |key, value|
puts "ip: #{key}"
value.each { |k,v| puts "\t#{key}: #{value}" }
end
如果你为哈希添加一些额外的选项,这个方法也会起作用。
但是,如果你只想调试关于awesome_print
的阅读。
答案 1 :(得分:2)
results.each do |k, v|
puts "IP: #{k}, Port: #{v['port']}, Ver: #{v['ver']}"
end