Ruby 中多维数组的帮助

2024-05-14

我有以下代码将字符串拆分为 3 个字节的组:

str="hello"
ix=0, iy=0
bytes=[]
tby=[]
str.each_byte do |c|
    if iy==3 
        iy=0
        bytes[ix]=[]
        tby.each_index do |i|
            bytes[ix][i]=tby[i]
        end
        ix+=1
    end
    tby[iy]=c
    iy+=1
end
puts bytes

我基于这个例子:http://www.ruby-forum.com/topic/75570 http://www.ruby-forum.com/topic/75570

但是我从中收到类型错误。谢谢。


ix = 0, iy = 0翻译为ix = [0, (iy = 0)],这就是您收到类型错误的原因。

然而,有一种不太“程序化”的方式来做你想做的事情:

对于红宝石 1.8.7+:

"hello world".each_byte.each_slice(3).to_a
#=> [[104, 101, 108], [108, 111, 32], [119, 111, 114], [108, 100]]

对于红宝石 1.8.6:

require 'enumerator'
"hello world".enum_for(:each_byte).enum_for(:each_slice, 3).to_a
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ruby 中多维数组的帮助 的相关文章

  • 在 Ruby 文档中哪里可以找到字符串转义序列?

    我可以在 中找到有关 Ruby 转义序列的详细信息 红宝石弦 http www tutorialspoint com ruby ruby strings htm and 转义序列 http en wikibooks org wiki Rub
  • 在 Ruby 中,如何指定另一个目录中的文件作为输入?

    这可能有一个简单的答案 但我正在开发一个测试套件 它需要位于不同文件夹中的输入文件 我想使用相对路径 如下所示 graph Graph new lib test input txt 但鲁比不喜欢这样 使用这样的相对文件路径的最佳方法是什么
  • 如何静默启动Sinatra + Thin?

    我有一个 Sinatra Base webservice 我想从命令行 Ruby 程序启动它 所以我有这个 command line program file require mymodule server puts Running on
  • 如何使用 Nokogiri 漂亮地打印 HTML?

    我用 Ruby 编写了一个网络爬虫 并且正在使用Nokogiri HTML来解析页面 我需要打印该页面 在 IRB 中闲逛时 我注意到一个pretty print方法 然而它需要一个参数 我不知道它想要什么 我的爬虫正在缓存网页的 HTML
  • 学习树顶

    我正在尝试自学 Ruby 的 Treetop 语法生成器 我发现 对于 最好的 文档来说 不仅文档非常稀疏 而且它的工作方式似乎并不像我希望的那样直观 从高层次上来说 我真的很喜欢比现场文档或视频更好的教程 如果有的话 在较低的层面上 这是
  • 如何将 current_user 传递给 Sidekiq 的 Worker

    我正在努力通过current user or User find 1 到工作模块 但在 sidekiq 的仪表板中出现错误 localhost 3000 sidekiq retries NoMethodError 未定义方法 支持 字符串
  • Rube.exe:Babun 中没有这样的文件或目录

    我正在尝试在 Babun 中安装 ruby gems 以便我可以安装 sass 和 compass 但不断收到错误 C RailsInstaller Ruby2 1 0 bin ruby exe No such file or direct
  • YAML 每个缩进有多少个空格?

    如果我在每个缩进级别使用一个空格 两个或四个空格 有什么区别吗 YAML 每个结构类型的空间数量有什么具体规则吗 例如4嵌套空间maps 1每空间项目清单 etc 我正在为 elastic beanstalk ebextensions 编写
  • 安装 gem 失败并出现权限错误[重复]

    这个问题在这里已经有答案了 我昨天将 Mac 操作系统更新至 10 9 Mavericks 我当前的 Ruby 版本显示为 ruby 2 0 0p247 2013 06 27 修订版 41674 universal x86 64 darwi
  • 不使用 RVM 时的 Cron +

    我使用的是RVM环境 RUby 版本 2 1 2 导轨 4 1 1 schedule rb every 1 minute do runner note send mail end I used whenever update crontab
  • Thor 可执行文件 - 忽略任务名称

    雷神维基页面 制作可执行文件 https github com wycats thor wiki Making An Executable 向您展示如何创建由 thor 支持的 CLI 命令 如下所示 bash mythorcommand
  • 无法在 Windows 7 上安装 Rmagick 和 Imagemagick

    当我跑步时gem install rmagick 2 13 1 gem从 rmagick 2 13 1 gem 所在的目录中 我收到一个错误 指出它无法构建 gem 本机扩展 下面显示 c Ruby192 bin ruby exe extc
  • 如何使用 ActiveRecord 列出所有数据库

    我希望能够使用 ActiveRecord 列出所有数据库 因此 我需要在终端中使用与以下命令等效的 ActiveRecord psql host 192 168 0 100 port 5432 username postgres list
  • ActionMailer 响应“501 5.5.4 无效参数”

    我正在 Ruby 2 0 0 上使用 Rails 4 开发一个应用程序 在 Devise 中注册后 应用程序会发送一封电子邮件 这是发送电子邮件的代码 应用程序 模型 sponsor rb after create send email t
  • 是否可以下载 Ruby gem 而不自动安装它?

    当我使用下载东西时gem我希望能够只下载 gem 然后选择是否要安装它 我问这个问题是因为我想在多台计算机上安装特定的 gem 而不是在每台计算机上从互联网安装 宝石获取 所以 像 gem fetch gosu 这将离开gosu 0 7 1
  • 有没有办法修复 Elastic Beanstalk 中的 Gem::LoadError

    我对 Elastic Beanstalk 比较陌生 因此希望得到一些建议 将 RoR 应用程序部署到 EB Puma 使用在 64 位 Amazon Linux 上运行的 Ruby 2 6 后 当我 转到环境 链接时 它不会呈现我的应用程序
  • 为什么私有辅助方法仍然可以在视图中访问?

    另一个 为什么会这样 的问题 我注意到私有辅助方法仍然可以在视图中访问 为什么 有没有办法防止这种情况 例如 当具有只能从另一个助手中调用的助手方法时 帮手是混合在一起的模块 http www ruby doc org docs Progr
  • 如何在 Ruby 中访问私有类方法?

    给定一个 Ruby 类 class MyClass def self my class method puts class method end private def my method puts regular method end p
  • Rails3-jquery-autocomplete 如果没有可用数据则清除字段

    我正在使用rails3 jquery autocomplete 如果自动完成没有返回结果 是否可以清除自动完成字段的值 我试图阻止用户提交数据库中没有的值 我使用的是旧版本 但我实现了change处理程序autocomplete call
  • Rails:与自身的多对多关系

    我在创建此关联时遇到问题 考虑模型 Entry 我希望条目有许多作为父母的条目 并且我希望条目有许多作为孩子的条目 我想通过一个我称为 关联 的模型来实现这种关系 所以这是我尝试的 移民 class CreateAssociations l

随机推荐