python – 在Ruby中逐步将数组拆分为子数组


Python中,我可以使用“jump-step”对数组进行切片.例:

In [1]: a = [1,2,3,4,5,6,7,8,9] 

In [4]: a[1:7:2] # start from index = 1 to index < 7,with step = 2
Out[4]: [2,6]

Ruby能做到吗?

解决方法

a = [1,9]
a.values_at(*(1...7).step(2)) - [nil]
#=> [2,6]

虽然在上面的例子中 – [nil]部分不是必需的,但它只是用于你的范围超过数组的大小,否则你可能得到这样的东西:

a = [1,9]
a.values_at(*(1..23).step(2))
#=> [2,nil,nil]

dawei

【声明】:唐山站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。