別のキーワード
ライブラリ
- ビルトイン (98)
クラス
-
Enumerator
:: Lazy (93) - Range (5)
キーワード
- % (2)
- chunk (24)
-
slice
_ after (22) -
slice
_ before (36) -
slice
_ when (11)
検索結果
先頭5件
-
Range
# step(s = 1) -> Enumerator (15330.0) -
範囲内の要素を s おきに繰り返します。
...ange の時は Enumerator を返します。(例: String の Range)
//emlist[例][ruby]{
(1..10).step(3) {|v| p v}
# => 1
# 4
# 7
# 10
("a".."f").step(2) {|v| p v}
# => "a"
# "c"
# "e"
(10..0).step(-3) {|v| p v}
# => 10
# 7
# 4
# 1
//}
非数値の Range では、イ......[ruby]{
# Time の Range は each でイテレートできない
(Time.utc(2024, 12, 25)...Time.utc(2024, 12, 26)).each { |t| p t }
# => 'Range#each': can't iterate from Time (TypeError)
# step は使用可能
(Time.utc(2024, 12, 25)...Time.utc(2024, 12, 26)).step(60*60*6) { |t| p t }
# => 2024-12-......25 00:00:00 UTC
# 2024-12-25 06:00:00 UTC
# 2024-12-25 12:00:00 UTC
# 2024-12-25 18:00:00 UTC
("a"..).step("*").take(3) # => ["a", "a*", "a**"]
//}... -
Range
# step(s = 1) -> Enumerator :: ArithmeticSequence (15330.0) -
範囲内の要素を s おきに繰り返します。
...ange の時は Enumerator を返します。(例: String の Range)
//emlist[例][ruby]{
(1..10).step(3) {|v| p v}
# => 1
# 4
# 7
# 10
("a".."f").step(2) {|v| p v}
# => "a"
# "c"
# "e"
(10..0).step(-3) {|v| p v}
# => 10
# 7
# 4
# 1
//}
非数値の Range では、イ......[ruby]{
# Time の Range は each でイテレートできない
(Time.utc(2024, 12, 25)...Time.utc(2024, 12, 26)).each { |t| p t }
# => 'Range#each': can't iterate from Time (TypeError)
# step は使用可能
(Time.utc(2024, 12, 25)...Time.utc(2024, 12, 26)).step(60*60*6) { |t| p t }
# => 2024-12-......25 00:00:00 UTC
# 2024-12-25 06:00:00 UTC
# 2024-12-25 12:00:00 UTC
# 2024-12-25 18:00:00 UTC
("a"..).step("*").take(3) # => ["a", "a*", "a**"]
//}... -
Range
# step(s = 1) {|item| . . . } -> self (15330.0) -
範囲内の要素を s おきに繰り返します。
...ange の時は Enumerator を返します。(例: String の Range)
//emlist[例][ruby]{
(1..10).step(3) {|v| p v}
# => 1
# 4
# 7
# 10
("a".."f").step(2) {|v| p v}
# => "a"
# "c"
# "e"
(10..0).step(-3) {|v| p v}
# => 10
# 7
# 4
# 1
//}
非数値の Range では、イ......[ruby]{
# Time の Range は each でイテレートできない
(Time.utc(2024, 12, 25)...Time.utc(2024, 12, 26)).each { |t| p t }
# => 'Range#each': can't iterate from Time (TypeError)
# step は使用可能
(Time.utc(2024, 12, 25)...Time.utc(2024, 12, 26)).step(60*60*6) { |t| p t }
# => 2024-12-......25 00:00:00 UTC
# 2024-12-25 06:00:00 UTC
# 2024-12-25 12:00:00 UTC
# 2024-12-25 18:00:00 UTC
("a"..).step("*").take(3) # => ["a", "a*", "a**"]
//}... -
Range
# %(s) -> Enumerator (230.0) -
範囲内の要素を s おきに繰り返します。
...ange の時は Enumerator を返します。(例: String の Range)
//emlist[例][ruby]{
(1..10).step(3) {|v| p v}
# => 1
# 4
# 7
# 10
("a".."f").step(2) {|v| p v}
# => "a"
# "c"
# "e"
(10..0).step(-3) {|v| p v}
# => 10
# 7
# 4
# 1
//}
非数値の Range では、イ......[ruby]{
# Time の Range は each でイテレートできない
(Time.utc(2024, 12, 25)...Time.utc(2024, 12, 26)).each { |t| p t }
# => 'Range#each': can't iterate from Time (TypeError)
# step は使用可能
(Time.utc(2024, 12, 25)...Time.utc(2024, 12, 26)).step(60*60*6) { |t| p t }
# => 2024-12-......25 00:00:00 UTC
# 2024-12-25 06:00:00 UTC
# 2024-12-25 12:00:00 UTC
# 2024-12-25 18:00:00 UTC
("a"..).step("*").take(3) # => ["a", "a*", "a**"]
//}... -
Range
# %(s) -> Enumerator :: ArithmeticSequence (230.0) -
範囲内の要素を s おきに繰り返します。
...ange の時は Enumerator を返します。(例: String の Range)
//emlist[例][ruby]{
(1..10).step(3) {|v| p v}
# => 1
# 4
# 7
# 10
("a".."f").step(2) {|v| p v}
# => "a"
# "c"
# "e"
(10..0).step(-3) {|v| p v}
# => 10
# 7
# 4
# 1
//}
非数値の Range では、イ......[ruby]{
# Time の Range は each でイテレートできない
(Time.utc(2024, 12, 25)...Time.utc(2024, 12, 26)).each { |t| p t }
# => 'Range#each': can't iterate from Time (TypeError)
# step は使用可能
(Time.utc(2024, 12, 25)...Time.utc(2024, 12, 26)).step(60*60*6) { |t| p t }
# => 2024-12-......25 00:00:00 UTC
# 2024-12-25 06:00:00 UTC
# 2024-12-25 12:00:00 UTC
# 2024-12-25 18:00:00 UTC
("a"..).step("*").take(3) # => ["a", "a*", "a**"]
//}... -
Enumerator
:: Lazy # chunk {|elt| . . . } -> Enumerator :: Lazy (131.0) -
Enumerable#chunk と同じですが、配列ではなく Enumerator::Lazy を返します。
...すが、配列ではなく Enumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.chunk{ |n| n % 3 == 0 }
# => #<Enumerator::Lazy: #<Enumerator: #<Enumerator::Generator:0x007f8bf18118f0>:each>>
1.step.lazy.chunk{ |n| n % 3 == 0 }.take(5).force
# => [[false, [1, 2]], [true, [3]], [fa... -
Enumerator
:: Lazy # chunk(initial _ state) {|elt , state| . . . } -> Enumerator :: Lazy (131.0) -
Enumerable#chunk と同じですが、配列ではなく Enumerator::Lazy を返します。
...すが、配列ではなく Enumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.chunk{ |n| n % 3 == 0 }
# => #<Enumerator::Lazy: #<Enumerator: #<Enumerator::Generator:0x007f8bf18118f0>:each>>
1.step.lazy.chunk{ |n| n % 3 == 0 }.take(5).force
# => [[false, [1, 2]], [true, [3]], [fa... -
Enumerator
:: Lazy # slice _ after {|elt| bool } -> Enumerator :: Lazy (131.0) -
Enumerable#slice_after と同じですが、配列ではなく Enumerator::Lazy を返します。
...が、配列ではなく Enumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.slice_after { |e| e % 3 == 0 }
# => #<Enumerator::Lazy: #<Enumerator: #<Enumerator::Generator:0x007fd73980e6f8>:each>>
1.step.lazy.slice_after { |e| e % 3 == 0 }.take(5).force
# => [[1, 2, 3], [4, 5, 6],... -
Enumerator
:: Lazy # slice _ after(pattern) -> Enumerator :: Lazy (131.0) -
Enumerable#slice_after と同じですが、配列ではなく Enumerator::Lazy を返します。
...が、配列ではなく Enumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.slice_after { |e| e % 3 == 0 }
# => #<Enumerator::Lazy: #<Enumerator: #<Enumerator::Generator:0x007fd73980e6f8>:each>>
1.step.lazy.slice_after { |e| e % 3 == 0 }.take(5).force
# => [[1, 2, 3], [4, 5, 6],... -
Enumerator
:: Lazy # slice _ before {|elt| bool } -> Enumerator :: Lazy (131.0) -
Enumerable#slice_before と同じですが、配列ではなく Enumerator::Lazy を返します。
...が、配列ではなく Enumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.slice_before { |e| e.even? }
# => #<Enumerator::Lazy: #<Enumerator: #<Enumerator::Generator:0x00007f9f31844ce8>:each>>
1.step.lazy.slice_before { |e| e % 3 == 0 }.take(5).force
# => [[1, 2], [3, 4, 5], [6... -
Enumerator
:: Lazy # slice _ before(initial _ state) {|elt , state| bool } -> Enumerator :: Lazy (131.0) -
Enumerable#slice_before と同じですが、配列ではなく Enumerator::Lazy を返します。
...が、配列ではなく Enumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.slice_before { |e| e.even? }
# => #<Enumerator::Lazy: #<Enumerator: #<Enumerator::Generator:0x00007f9f31844ce8>:each>>
1.step.lazy.slice_before { |e| e % 3 == 0 }.take(5).force
# => [[1, 2], [3, 4, 5], [6... -
Enumerator
:: Lazy # slice _ before(pattern) -> Enumerator :: Lazy (131.0) -
Enumerable#slice_before と同じですが、配列ではなく Enumerator::Lazy を返します。
...が、配列ではなく Enumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.slice_before { |e| e.even? }
# => #<Enumerator::Lazy: #<Enumerator: #<Enumerator::Generator:0x00007f9f31844ce8>:each>>
1.step.lazy.slice_before { |e| e % 3 == 0 }.take(5).force
# => [[1, 2], [3, 4, 5], [6... -
Enumerator
:: Lazy # slice _ when {|elt _ before , elt _ after| bool } -> Enumerator :: Lazy (131.0) -
Enumerable#slice_when と同じですが、配列ではなく Enumerator::Lazy を返します。
...、配列ではなく Enumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.slice_when { |i, j| (i + j) % 5 == 0 }
# => #<Enumerator::Lazy: #<Enumerator: #<Enumerator::Generator:0x00007fce84118348>:each>>
1.step.lazy.slice_when { |i, j| (i + j) % 5 == 0 }.take(5).force
# => [[1, 2],...