def enumerate(arr):
(0..arr.length - 1).to_a.zip(arr)
这是内置的东西吗?它不需要它的成员不可变,它只需要在标准库中。我不想成为Array类的子类来为项目添加Python特性。Python的枚举在Ruby中?
它在Ruby中有不同的名字吗?
%w(a b c).enumerate
=> [[0, "a"], [1, "b"], [2, "c"], [3, "d"]]
def enumerate(arr):
(0..arr.length - 1).to_a.zip(arr)
这是内置的东西吗?它不需要它的成员不可变,它只需要在标准库中。我不想成为Array类的子类来为项目添加Python特性。Python的枚举在Ruby中?
它在Ruby中有不同的名字吗?
%w(a b c).enumerate
=> [[0, "a"], [1, "b"], [2, "c"], [3, "d"]]
像这样的东西在Python:
a = ['do', 're', 'mi', 'fa']
for i, s in enumerate(a):
print('%s at index %d' % (s, i))
成为这红宝石:
a = %w(do re mi fa)
a.each_with_index do |s,i|
puts "#{s} at index #{i}"
end
假设这是枚举,each_with_index
可以做到这一点。或者如果您有Enumerator
,只需使用with_index
即可。
'一个=“做重新ㄙ '.split()'可能更接近Ruby版本 – Antimony