带索引的 Ruby `each_with_object`

2023-12-22

我想要做a.each_with_object with index,以比这更好的方式:

a = %w[a b c]
a.each.with_index.each_with_object({}) { |arr, hash|  
  v,i = arr
  puts "i is: #{i}, v is #{v}" 
}

i is: 0, v is a
i is: 1, v is b
i is: 2, v is c
=> {}

有没有办法做到这一点而不需要v,i = arr ?


在你的例子中.each.with_index是多余的。我找到了这个解决方案:

['a', 'b', 'c'].each_with_object({}).with_index do |(el, acc), index|
  acc[index] = el
end
# => {0=>"a", 1=>"b", 2=>"c"}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

带索引的 Ruby `each_with_object` 的相关文章

  • 为什么我可以像调用实例方法一样调用类方法?

    我正在查看这个例子 class SQLObject def self columns return columns if columns columns DBConnection execute2 lt lt SQL first SELEC
  • 如何在initialize()中使用define_method

    尝试使用define method inside initialize但得到未定义的方法define method 我究竟做错了什么 class C def initialize n define method n puts some me
  • ruby 2.0.0p247 的分段错误导致 Rails 服务器崩溃

    在 OS X Mavericks 1 9 上运行 Rails 4 0 Ruby 2 0 0p247 我今天遇到了一个我从未遇到过的错误 我不明白 当尝试在我的项目中启动 Rails 服务器时 服务器崩溃了 我确实尝试重新安装并重新编译一次
  • 将“Authorization Bearer”哈希添加到 Net::HTTP post 请求 (Ruby)

    我怎样才能添加Authorization Bearer到 POST 请求Net HTTP 我只能在文档中找到 基本身份验证 的帮助 req basic auth user pass Source https docs ruby lang o
  • 何时使用node.js、sinatra、rails? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 这 3 种语言 框架的最佳用途是什么 混合所有 或 2 个 有用吗 如果您正在构建一个完整的 Web 应用程序 您可能应该使用 Rails 因为
  • 覆盖 Sinatra 默认的 NotFound 错误页面

    有没有办法覆盖 sinatra 默认的 NotFound 错误页面 Sinatra 不知道这个小曲 我希望 sinatra 在未找到正确的路由时仅将纯字符串显示为 未找到方法 但是当我从路由内部引发 404 错误时 我希望它显示传入的错误消
  • ruby 管道、IO 和 stderr 重定向

    我希望有一个 ruby 程序 一个 rake 任务 观察另一个 rake 任务的输出 输出写入器输出到 stderr 我想读一下这些行 我很难设置它 如果我有一个作家 stdout writer rb 不断打印一些东西 usr bin en
  • 使用 Mechanize (Ruby) 进行基本身份验证和表单身份验证

    我正在尝试登录公司内部网上的一个站点 该站点具有基本身份验证弹出对话框和基于表单的身份验证 这是我正在使用的代码 导致 401 gt Net HTTPUnauthorized 错误 require rubygems require mech
  • 从 float 转换的 Ruby Time 对象不等于原始 Time 对象

    time Time now fvalue time to f return time Time at fvalue 有人可以解释为什么上面的表达式返回 false 吗 如何从 float 创建一个与原始时间变量匹配的新 Time 对象 Th
  • 通过 SO_RCVTIMEO 套接字选项在 Ruby 中设置套接字超时

    我试图通过 SO RCVTIMEO 套接字选项在 Ruby 中设置套接字超时 但它似乎对任何最近的 nix 操作系统都没有影响 使用 Ruby 的 Timeout 模块不是一个选择 因为它需要为每个超时生成和连接线程 这可能会变得昂贵 在需
  • 为 Rails 上的 postgresql 创建用户

    我选择 postgresql 作为我的 Rails 数据库 但当我尝试运行 rake db create all 时 我遇到了一个明显常见的错误 即 致命 角色 app 不存在 我找到了两种解决方案 但我不确定哪一种是正确的 有一个网站说
  • 对范围值进行排序

    我想对表示数值范围的字符串数组进行排序 如下所示 b 0 5 100 250 5 25 50 100 250 500 25 50 使用sort我得到的方法 b sort gt 0 5 100 250 25 50 250 500 5 25 5
  • 添加两个 ActiveRecord::Relation 对象[重复]

    这个问题在这里已经有答案了 如何将两个关系添加在一起 当我尝试 运算符时 它返回一个数组 但我需要它来返回关系 谢谢 麦克风 Try new relation relation merge another relation
  • 用于获取下周一(或一周中的任何一天)的日期的 Ruby 代码

    给定一个输入 例如 day Monday 我如何计算下一次的日期day def date of next day end require date def date of next day date Date parse day delta
  • Cucumber / Savon 省略或删除日志输出

    在运行黄瓜测试时 我得到 除了测试结果之外 许多与调试 日志相关的输出 格式如下 D 2013 03 06T12 21 38 911829 49031 DEBUG SOAP request D 2013 03 06T12 21 38 911
  • 查找 Rails 应用程序中未使用的代码

    如何查找正在运行和未运行的代码生产中 该应用程序经过充分测试 但还有很多测试unused代码 因此 他们在运行测试时得到覆盖 我想重构并清理这个烂摊子 它一直在浪费我的时间 我有很多后台工作 这就是为什么我希望生产环境来指导我 在 Hero
  • “heroku”命令存在于以下 Ruby 版本中:

    我在使用 heroku 工具带时遇到了重大问题 我正在使用 cedar 14 堆栈 当我尝试使用不是的 ruby 版本时ruby 2 0 0 dev我收到这个错误 rbenv heroku command not found The her
  • Rails 3.2 防止使用错误保存对象

    我有一个 ActiveRecord 对象 我想阻止它被保存 而不对模型进行永久验证 你曾经可以使用做这样的事情errors add但它看起来不再有效了 user User last user errors add name name doe
  • 使用 Carrierwave 上传到 S3 时获取 mp3 持续时间

    我正在编写一个应用程序 它基本上是一个音乐平台 我想通过其元数据获取 mp3 的持续时间 并将其保存在表中 然后再将其上传到 S3 我使用载波和雾宝石的组合来上传 提取 mp3 元数据以保存到数据库的推荐方法是什么 有一个用于此类操作的 g
  • Rails 基本 Base64 身份验证

    我正在尝试复制此 GET curl 请求 curl D X GET H Authorization Basic dGVzdEB0YXByZXNlYXJjaC5jb206NGMzMTg2Mjg4YWUyM2ZkOTY2MWNiNWRmY2Nl

随机推荐

  • 结合 d3.js 和backbone.js

    我正在开发一个项目 它将所有 d3 js 可视化与backbone js 组合到一个单页面应用程序中 由于我有很多可视化效果 例如条形图 饼图等 我想知道解决这个问题的最佳方法是什么 例如 假设我有两个条形图和一个饼图 我是否应该将所有设置
  • 在 `$scope` 或 `this` 上定义的控制器函数之间的性能差异 - AngularJS

    在 Angular 中 您可以通过将方法附加到控制器中来定义方法 scope scope myFunction function 当然 您也可以将它们附加到this 我见过它用于指令和父控制器之间的通信 within the control
  • React-Select:如何在将 HTML 传递给选项中的标签值时保持搜索能力

    我有一个可搜索的反应选择字段 我将 HTML 传递到label价值 搜索在添加 HTML 之前有效 但在添加 HTML 之后 可以理解的是 它不再有效 在将 HTML 传递给标签时 我可以做一些具体的事情来修复可搜索性吗 我原来的问题 你能
  • Node-GYP 失败,退出代码:1

    我必须在 electro atom 中使用 node usb 来使用我正在尝试安装 node gyp 并且我面临一个问题 gyp ERR stack Error gyp failed with exit code 1 gyp ERR sta
  • 如何禁用 Android 按钮?

    我创建了一个包含两个按钮的布局 下一步 和 上一步 在按钮之间我生成一些动态视图 因此 当我第一次启动应用程序时 我想禁用 上一个 按钮 因为不会有任何以前的视图 当没有更多视图可显示时 我还想禁用 下一步 按钮 有没有办法禁用按钮 你尝试
  • 未找到 SDK 位置。使用 local.properties 文件中的 sdk.dir 或 ANDROID_HOME 环境变量定义位置

    我最近尝试导入从 Google 开发者网站下载的示例 Android 游戏 将它们导入 Android Studio 后 出现以下错误 错误 找不到 SDK 位置 定义位置sdk dir在 local properties 文件中或使用AN
  • imagemagick wand 将 pdf 页面保存为图像

    我想使用 imagemagick Wand 包将 pdf 文件的所有页面转换为单个图像文件 不过 我遇到了以下问题 请参阅下面突出显示问题的评论 import tempfile from wand image import Image wi
  • 当此函数从 scipy.misc 导入时,如何修复“无法导入名称 'imresize' 错误?”

    我正在使用 google colab 来运行 python 代码并尝试缩小图像 from keras layers import Lambda import tensorflow as tf from skimage import data
  • 如何让超级视图拦截按钮触摸事件?

    假设我有这段代码 import
  • 为什么我的 Rails 资源管道中的 js 文件没有被编译?

    我遇到了与这个问题类似的问题 Rails 资产管道不包括 application js 清单中所需的文件 https stackoverflow com questions 15328569 rails asset pipeline not
  • 设置吐司显示长度

    无论如何 我是否可以告诉 Toast 通知仅在指定的时间内显示 通常比常规的 Toast 消息要短 我通过在比标准 toast 持续时间短的一定延迟后调用 toast cancel 找到了解决方案 final Toast toast Toa
  • 如何使溢出 CSS 属性与隐藏值一起使用

    我正经历着一段艰难的时光overflow hidden 基本上 我试图隐藏位于 div 我不知道为什么这不起作用 它没有隐藏它 而是将我的列表从水平布局打破为垂直布局 无序列表是轮播 容器是列表 下面是我的 CSS 代码 div body
  • 可见性会影响 DOM 操作性能吗?

    IE7 Windows XP 我的页面中有一个第三方组件 它会在每次调整浏览器窗口大小时进行大量 DOM 操作来调整自身 不幸的是 我几乎无法控制它的内部功能 并且我已经尽可能地优化了其他所有内容 例如回调和事件处理程序 我无法通过设置 d
  • Swift - 将数组中的值转换为双精度或浮点数

    我有一个数组 其值是字符串 但所有字符串都是 1 0 2 0 等值 我正在尝试将这些字符串转换为双精度数或浮点数 以便我可以将它们全部加在一起 我如何快速做到这一点 let x 1 0 1 5 2 0 print x map Double
  • react-select:如何将 optionRenderer 属性与异步组件一起使用?

    我正在使用反应选择来创建一个选择框 对地址进行地理编码 然后提供该搜索返回的相应地方政府区域的下拉列表 我只是想格式化每个选项 以便它显示状态 例如 昆士兰州在当地政府区域之后 例如 布里斯班 所以我试图让它返回类似的内容 Brisbane
  • Sagemaker 的 IAM 角色?

    我正在尝试让 AWS SageMaker 调用 AWS Comprehend 我在 SageMaker 中收到此消息 ClientError 调用时发生错误 AccessDeniedException StartTopicsDetectio
  • 使用 Ruby 连接到 Oracle 数据库

    我一直无法连接到 Oracle DB 已经阅读了很多内容 但对结果没有任何帮助 我有远程 Oracle DB 我使用 DBVisualizer 设置连接来连接到它 如下所示 DB Type Oracle Driver jdbc Oracle
  • 手机启动时是否可以启动Android应用程序活动?

    我正在尝试构建一个Android应用程序 该应用程序的关键功能之一是它能够在手机启动时自动启动一个活动 我看到我手机上的一些应用程序已经做到了这一点 任何帮助都会很棒 所以我至少可以通过 sdk 对此进行更好的研究 谢谢 您需要像这样实现
  • 使用 tweepy 访问 Twitter 的 Streaming API

    我目前无法获取使用 tweepy 访问 Twitter 的 Streaming API 的示例代码以正确运行 呃 或者至少是我期望它如何运行 我正在使用 GitHub 上最近克隆的 tweepy 标记为版本 1 9 和 Python 2 7
  • 带索引的 Ruby `each_with_object`

    我想要做a each with object with index 以比这更好的方式 a w a b c a each with index each with object arr hash v i arr puts i is i v i