将散列中的所有键从字符串转换为 Ruby 中的符号的(最快/最干净/直接)方法是什么?
这在解析 YAML 时会很方便。
my_hash = YAML.load_file('yml')
我希望能够使用:
my_hash[:key]
而不是:
my_hash['key']
In 红宝石 >= 2.5 (docs) 您可以使用:
my_hash.transform_keys(&:to_sym)
使用旧的 Ruby 版本?这是一个单行代码,它将把哈希值复制到一个带有符号化键的新哈希值中:
my_hash = my_hash.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
With Rails您可以使用:
my_hash.symbolize_keys
my_hash.deep_symbolize_keys
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)