我想找到以下项目list1:
list1 = ['peach', 'plum', 'apple', 'kiwi', 'grape']
Run Code Online (Sandbox Code Playgroud)
也在list2:
list2 = ['peach,0,1,1,0,1,0,1', 'carrot,1,0,1,1,0,1,1', 'lime,0,1,1,0,1,1,0', 'apple,0,1,1,0,1,1,1']
Run Code Online (Sandbox Code Playgroud)
问题是list2所需项目后面的项目有数字.如何找到共同的项目均list1和list2,以及删除的项目list2不在list1(同时仍保持重叠项目后的零和的吗?)
如果我想在Ruby中使用Nokogiri解析HTML块,如下所示:
<th class="first">ancd</th>
<th>xyz</th>
<th>sdf</th>
Run Code Online (Sandbox Code Playgroud)
如何排除包含特定类名的标记?在这种情况下的"第一".
我需要使用两个数组创建一个新的Hash对象.
但是,条件是第一个数组值应该是Hash的键值,第二个数组值应该是Hash值.
a = ["x", "y"]
b = [2, 4]
Run Code Online (Sandbox Code Playgroud)
结果应该是: c = {"x" => 2, "y" => 4}
我们如何在Ruby中实现这一目标?
xs = [1,2,3]
x = 5
Run Code Online (Sandbox Code Playgroud)
然后我需要那个 sum = 1+2+3+1+2 = 9
repeat_purchases_percent是我的Category模型中的一个方法.保证所有无父类别都具有数据库中future_purchases_percent的值.子类别可能有也可能没有future_purchases_percent.如果他们这样做,我想使用那个价值.如果没有,我想使用父的值,依此类推.
我尝试了一种递归方法.
def future_purchases_percent
if self.future_purchases_percent.nil?
Category.find(self.parent_id).future_purchases_percent
else
future_purchases_percent
end
end
Run Code Online (Sandbox Code Playgroud)
这会陷入一个不断评估的循环中:
if self.future_purchases_percent.nil?
Run Code Online (Sandbox Code Playgroud)
我怎样才能正确实现这个方法?
我在Ruby中有一个数组,其值如下
xs = %w(2.0.0.1
2.0.0.6
2.0.1.10
2.0.1.5
2.0.0.8)
Run Code Online (Sandbox Code Playgroud)
等等.我想对数组进行排序,以便最终结果应该是这样的:
ys = %w(2.0.0.1
2.0.0.6
2.0.0.8
2.0.1.5
2.0.1.10)
Run Code Online (Sandbox Code Playgroud)
我已经尝试过使用该array.sort功能,但它"2.0.1.10"之前放置过"2.0.1.5".我不确定为什么会这样
在Rails中,我有一个类名User,我只想看一下:name, :address, :age
我想写一段代码,如下所示:
user = User.new
[name, address, age].zip(["Name", "Address", 10]).each do |attribute, val|
user.attribute = val
end
Run Code Online (Sandbox Code Playgroud)
事情是我不知道如何正确地做,因为user.attribute显然不是一个有效的线.换句话说,反正是有,这样user.attribute得到的评价user.name,user.address,user.age取决于环路?
谢谢
ruby ×6
arrays ×3
attributes ×1
hash ×1
html-parsing ×1
list ×1
merge ×1
nokogiri ×1
python ×1
recursion ×1