Tag: 数组

如何通过两个条件对ruby数组进行排序

我想通过两个不同的条件对这个数组进行排序。 首先,我想按类型对数组进行排序:类型可以是(1,2,3,4),我想按顺序对它们进行排序4 – 1 – 2 – 3。 然后在每个不同的类型中,我想按百分比递减它们。 所以排序的数组看起来像这样: [ , , , , , ]ect 我怎样才能做到这一点? 目前我只能按类型降序排序。 array = array.sort_by {|r| r.type }

ruby to unjumble words

我正在尝试编写一个ruby脚本,解读置换的单词,生成所有排列,并在txt目录中搜索单词。 我遇到了问题。 这是我所拥有的简单概述。 print “Enter Permuted Word:” words = STDIN.gets.chomp a = to_array(s) print a, “\n” perms = a.permutation(3).to_a.collect do |perm| perm.join end print perms, “\n” file = file.open(“words.txt”, “r”) file.read.each_line do |line| fields = line.chomp.split(“,”) words_un = fields[1] end file.close txt文件看起来像这样 words_un Aarhus Aaron Ababa aback abaft abandon abandoned abandoning abandonment abandons abase … […]

在Ruby中编辑JSON数组内容

我的JSON数组的结构如下: {“data”:[{“Chris”:[{“long”:10,”lat”:19}]},{“Scott”:[{“long”:9,”lat”:18}]}]} 在ruby程序中,我希望能够编辑名称的lat和long值。 但我不太清楚该怎么做。 sections.each do |user_coords| user_coords.each do |user, coords| if user == Usrname then #Change lat and long value for Usrname end end end 如何才能做到这一点?

为什么在哈希中向数组追加一个值也会修改分配给它的另一个变量?

示例代码: hash_of_array = { a: [] } b = hash_of_array c = hash_of_array b[:a] < { a: [1] } puts c # => { a: [1] } 为什么两个变量的数组都有1? 我只将它附加在变量b 。 试穿 Ruby版本2.3.1,2.4.0 Rbenv

如何给出Array#new工作的块forms“Array.new(10){| e | e = e * 2}“?

我无法理解花括号内的部分。 Array.new(10) { |e| e = e * 2 } # => [0, 2, 4, 6, 8, 10, 12, 14, 16, 18] 我知道创建了一个包含十个值的新数组,但下半部分是做什么的?

排序:根据Ruby中的多个条件对数组进行排序

我有一个多维数组,如下所示: [ [name, age, date, gender] [name, age, date, gender] [..] ] 我想知道根据多种条件对这个数组进行排序的最佳方法……例如,我将如何根据年龄 先排序,然后根据名称进行排序? 我正在搞乱sort方法,如下: array.sort { |a,b| [ a[1], a[0] ] [ b[1], b[0] ] } 除此之外,我并不真正理解这种语法,我没有得到我期望的结果。 我应该使用sort方法吗? 我应该通过mapping数组来单独比较结果吗?

如何替换ruby字符串中的文本

我试图在Ruby中编写一个非常简单的方法,它接受一个字符串和一个单词数组,并检查字符串是否包含任何单词,如果是,它将用大写字母替换它们。 我做了一个尝试,但由于我的Ruby技能水平,它并不是很好。 def(my_words,my_sentence) #split the sentence up into an array of words my_sentence_words = my_sentence.split(/\W+/) #nested loop that checks the words array for each brand my_sentence_words.each do |i| my_words.each do |i| #if it finds a brand in the words and sets them to be uppercase if my_words[i] == my_sentence_words[i] my_sentence_words[i] == my_sentence_words[i].up.case end end end […]

RUBY / WATIR / RASTA:将excel / rasta中的值传递给Ruby中的数组?

如何将excel / rasta中用逗号分隔的值传递给Ruby中的数组。 HTML看起来像这样,…. Burger Pasta Fries … EXCEL看起来像这样…… 命令 汉堡,意大利面 这段代码不起作用 attr_accessor :orders order = [@orders] order.each do |i| ……. …….. ruby应该看起来像这样…… attr_accessor :orders orders = [ ‘burger’,’pasta ‘] *#should pass data from excel in the array “**orders**” orders.each do |i| @browser.checkbox(:text => i).click @browser.button(:name => ‘save’).click end 那么我如何将excel中的值传递给数组呢? 对不起,我还在学习Ruby:|

在不使用ruby中的循环的情况下反转数组

我有一个编码挑战来反转一个包含5个元素的数组。 如果不使用反向方法,我该怎么做? 码: def reverse(array) array end p reverse([“a”, 1, “apple”, 8, 90])

Array()的文档在哪里?

浏览规则源代码,我注意到他们正在调用Container(:和) ,这是我很少看到的。 事实上,我见过的唯一另一个地方就是制作gem 快速浏览显示Container子类Array ,以及快速跳转到Pry显示Array(:anything) #=> [:anything] 。 另外快速浏览一下Array的ruby文档并没有对这个问题有所了解。 Array()调用了什么方法,它在哪里记录,如何定义这样的方法,它在ruby中被认为是“坏forms”?