将字符串转换为哈希中的符号的最佳方法

2023-12-09

将散列中的所有键从字符串转换为 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(使用前将#替换为@)

将字符串转换为哈希中的符号的最佳方法 的相关文章

随机推荐

  • 带隐私的伪经典继承?

    In JavaScript 好的部分克罗克福德认为 使用伪经典继承模式的缺点之一是它公开公开实例变量 例如 var Ball function width color this width width this color color va
  • javascript:如何在没有jquery的情况下编写$(document).ready之类的事件

    在 jquery document ready function 或 function 中 如果没有 jquery 我怎么能做同样的事情 并且我需要浏览器兼容 并允许附加多个函数 注意 dom准备好 窗口onload 这就是 jQuery
  • 如何从给定字段长度的固定长度文本文件创建 DataFrame?

    我正在阅读固定位置文件 文件的最终结果存储在字符串中 我想将字符串转换为DataFrame进一步处理 请帮助我解决这个问题 下面是我的代码 输入数据 PRGREFNBR 值 01 11 苹果 真 0 56 02 12 梨 FALSE1 34
  • 在 php 和 Ruby On Rails 应用程序之间传递身份验证

    我有一个简单的 Ruby on Rails 应用程序 我想将其与现有的 php 网站集成 我只希望通过 php 应用程序身份验证的用户能够访问我的 Ruby on Rails 应用程序 它应该对用户显示为同一域中的同一网站 但如果我选择 它
  • 将 C++ 类型信息保存到文件中以供跨程序调用使用

    Edit 如果需要 可以使用更多上下文来突出显示实际问题 我想实现以下方法 template
  • 在 HTML5 中无限循环加载视频

    我希望在 HTML5 页面中放置一个视频 该视频将在页面加载时开始播放 完成后 不间断地循环回到开头 视频应该还可以NOT有任何与之关联的控件 并且要么与所有 现代 浏览器兼容 要么可以选择填充 以前我会通过以下方式完成此操作Flash a
  • 选择 blob 上的不同值

    有没有办法验证 Oracle 数据库中更多行中 blob 中的值是否相同 blob 是同一列 我将 blob 的大小存储在另一列中 但我需要知道该值是否也相等 存储的值是序列化对象 我建议添加另一列 其中包含hashblob 值的 当您存储
  • 在SVG线性渐变停止偏移中绑定Angular2值?

    我想在线性梯度停止偏移中使用绑定 angular2 值 但它给了我错误 有人可以告诉我如何在线性渐变的停止偏移中绑定 angular2 值 如下所示 测试组件 ts import Component EventEmitter ViewEnc
  • Angularjs 创建输入掩码

    我正在尝试创建一个指令来为我的输入创建自定义掩码 我知道还有其他库可以使用 但有时我需要根据公司需求进行自定义输入 例如 OS 012 08765 所以我宁愿创建自己的指令 到目前为止 我能够在我需要的模式上格式化数字 但不能在输入上格式化
  • 基本 PowerShell 功能无输出

    自从我开始使用 PowerShell 以来已经有一段时间了 到今天我可以说我已经完成了很多日常任务 不过 在学校每天都是新的一天 现在 当我开始使用函数时 我再次绊倒了 这是我的问题 即使使用许多初学者教程中的最简单的功能 它也无法在我的工
  • 如何使用导出Excel并打印数据表中选定的列?

    我想使用导出 Excel 并打印数据表 我使用以下代码 但无法对选定的列使用这两个选项 example DataTable dom Blfrtip buttons extend excel print exportOptions colum
  • 在 PHP 中生成随机密钥的最佳方法是什么?

    我正在寻找创建一个可重用的函数 它将生成一个随机密钥 其中包含选定长度的可打印 ACSII 字符 从 2 到 1000 我认为可打印的 ASCII 字符为 33 126 它们的密钥不需要完全唯一 如果在完全相同的毫秒内生成则唯一 所以uni
  • Prolog 在单独的数据库文本文件上插入、修改和删除事实

    我有一个包含很多事实的序言数据库文件knowledge pl 例如 father of joe paul father of joe mary mother of jane paul mother of jane mary male pau
  • 从 Mathematica 函数返回相等性

    我有一个返回等式的函数 我想打印它 例如 x y 或 2x 5 10 这些通常对数学没有任何意义 它不能进一步简化它 然而 有时两边是相等的 但我希望能够以未计算的形式打印相等 也就是说 我希望 Mathematica 打印 x x 而不是
  • 动态创建类方法

    我正在编写一个类方法来创建另一个类方法 似乎有一些奇怪的地方class eval and instance eval在类方法的上下文中进行操作 为了显示 class Test1 def self add foo self class eva
  • 为什么是!!更适合检查对象是否真实? [复制]

    这个问题在这里已经有答案了 一些 JavaScript 示例使用 检查对象是否可用 Check to see if Web Workers are supported if window Worker Yes I can delegate
  • 带有尺寸参数的不成比例气泡图

    我创建了一个气泡图 并输入了一些测试值 如下所示 this chart1 Series blueBubble Points AddXY 2 3 6 this chart1 Series redBubble Points AddXY 1 0
  • GitHub.com 的存储库大小限制

    最近我一直在使用 GitHub 我想知道 github com 上托管的文件的存储库大小限制是多少 已知限制 有多个适用的回购协议大小限制 软限位 截至 2023 年 根据docs 这是 5 GB 如果超出此限制 您可能会收到来自 GitH
  • PHP 5.3 方法重载(就像 Java 中一样)

    在 Java 中 我们有一个方法重载功能 这对于单例非常有用 例如 我有两个不同的 getInstance 方法 公共静态 它们的行为根据收到的参数而有所不同 public static Currency getInstance Strin
  • 将字符串转换为哈希中的符号的最佳方法

    将散列中的所有键从字符串转换为 Ruby 中的符号的 最快 最干净 直接 方法是什么 这在解析 YAML 时会很方便 my hash YAML load file yml 我希望能够使用 my hash key 而不是 my hash ke