Size: a a a

2019 December 20

N

Ni in RubyRush
𝓒𝓛𝓚
во во.! присоединяюсь.
почуму встроенный (1..10).each_slice(3) {|x| p x}  не выдаёт в конце возвращаемое значение, а если пишешь свою реализацию, то выдаёт. Хоть nil но возвращает.
потому что вроде как любой each итерирует массив, но возвращает либо тот же массив, либо nil (в случае с each_slice)

чтобы вернуть измененный массив, нужно добавить map

(1..10).each_slice(3).map {  |el| el }
=> [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]
источник

N

Ni in RubyRush
https://apidock.com/ruby/Enumerable/each_slice

всегда полезно обратиться к доке и почитать про метод подробнее

return Qnil;
источник

N

Ni in RubyRush
Gleb Grishakov
Привет, мне надо, наоборот, из под кеша убрать)
ну кешируешь в блоке то, что нужно. а то, что не кешировать, из блока убираешь
источник

GG

Gleb Grishakov in RubyRush
Ni
ну кешируешь в блоке то, что нужно. а то, что не кешировать, из блока убираешь
это да) но я хотел коллекцию закешировать целиком, исключив пару всего
так проще, чем каждый блок кешировать
поэтому поинтересовался, есть ли способ)
источник

N

Ni in RubyRush
Gleb Grishakov
это да) но я хотел коллекцию закешировать целиком, исключив пару всего
так проще, чем каждый блок кешировать
поэтому поинтересовался, есть ли способ)
я сам кешированием не занимался, но, скорее всего, только так
источник

GG

Gleb Grishakov in RubyRush
Ni
я сам кешированием не занимался, но, скорее всего, только так
ок, спасибо)
источник

𝓒

𝓒𝓛𝓚 in RubyRush
Ni
потому что вроде как любой each итерирует массив, но возвращает либо тот же массив, либо nil (в случае с each_slice)

чтобы вернуть измененный массив, нужно добавить map

(1..10).each_slice(3).map {  |el| el }
=> [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]
не .не. он должен просто печатать , и совсем ничего не возвращать. встроенный each_slice тк и делает .  Но кастомная реализация my_each_slice кроме печати, ещё и возвращает значение последнего задействованного элемента. Вот как у R M.
————————————————
#Задание
#Написать реализацию my_each_slice без использования
#each_slice


coll = (1..10)
coll.each_slice(3) { |x| p x}

coll.my_each_slice(3) { |x| p x }
————————————————-
моя реализация
#эту переменную я поставил. чтобы тестить удобней было.
size_of_slice=12

coll = (1..10)
coll.each_slice(size_of_slice) { |x| p x}
#Задание
#Написать функцию : без использования each_slice
#coll.my_each_slice(size_of_slice) { |x| p x }

class Range
 def my_each_slice(slice_size)
   self.begin.step(self.end,slice_size) do |v|
       arr =[]
       1.upto(slice_size) do |x|
         arr.push(v+x-1) if v+x-1 <= self.end
       end
       p arr
       #где-то тут должен быть yeild
   end
 end
end

#сделал без блока ( . ниасилил.
coll.my_each_slice(size_of_slice)
————————————————————-
вывод:
[1,2,3]
[4,5,6]
[7,8,9]
[10]
[1,2,3]
[4,5,6]
[7,8,9]
[10]
=>1
источник

N

Ni in RubyRush
𝓒𝓛𝓚
не .не. он должен просто печатать , и совсем ничего не возвращать. встроенный each_slice тк и делает .  Но кастомная реализация my_each_slice кроме печати, ещё и возвращает значение последнего задействованного элемента. Вот как у R M.
————————————————
#Задание
#Написать реализацию my_each_slice без использования
#each_slice


coll = (1..10)
coll.each_slice(3) { |x| p x}

coll.my_each_slice(3) { |x| p x }
————————————————-
моя реализация
#эту переменную я поставил. чтобы тестить удобней было.
size_of_slice=12

coll = (1..10)
coll.each_slice(size_of_slice) { |x| p x}
#Задание
#Написать функцию : без использования each_slice
#coll.my_each_slice(size_of_slice) { |x| p x }

class Range
 def my_each_slice(slice_size)
   self.begin.step(self.end,slice_size) do |v|
       arr =[]
       1.upto(slice_size) do |x|
         arr.push(v+x-1) if v+x-1 <= self.end
       end
       p arr
       #где-то тут должен быть yeild
   end
 end
end

#сделал без блока ( . ниасилил.
coll.my_each_slice(size_of_slice)
————————————————————-
вывод:
[1,2,3]
[4,5,6]
[7,8,9]
[10]
[1,2,3]
[4,5,6]
[7,8,9]
[10]
=>1
как может метод не возвращать ничего?
источник

𝓒

𝓒𝓛𝓚 in RubyRush
Ni
как может метод не возвращать ничего?
сам в шоке. Это вообще-то процедура может ничего не возвращать. Но coll.each_slice так делает. А кастомный метод возвращает
источник

IL

Igor Lukashin in RubyRush
𝓒𝓛𝓚
более чем устраивает. Зачем ставить ещё одного пожирателя памяти,перехватчика прерываний, службу ?
Если беспокоишься о ресурсах, зачем вообще ставить виндус?)
источник

𝓒

𝓒𝓛𝓚 in RubyRush
Igor Lukashin
Если беспокоишься о ресурсах, зачем вообще ставить виндус?)
Изначально чтобы админить, быть в том же контексте что и юзеры. Играть выгры. А потом уже столько наросло что снести венду и поставить линь - бред.
источник

𝓒

𝓒𝓛𝓚 in RubyRush
дома убунта в виртуалке для разработки
источник

IL

Igor Lukashin in RubyRush
Ну вот, а я бы в игры играл на консолях
источник

IL

Igor Lukashin in RubyRush
Каждый выбирает то что ему нравится
источник

𝓒

𝓒𝓛𝓚 in RubyRush
Igor Lukashin
Ну вот, а я бы в игры играл на консолях
я бы и на работу ездил на Ламборджини
источник

IL

Igor Lukashin in RubyRush
Это же и в тему про то, каким скриншотером пользоваться
источник

IL

Igor Lukashin in RubyRush
Каждый из нас просто оставил рекомендацию) юзер пусть сам выбирает что удобнее
источник

IL

Igor Lukashin in RubyRush
𝓒𝓛𝓚
я бы и на работу ездил на Ламборджини
Все в твоих руках
источник

𝓒

𝓒𝓛𝓚 in RubyRush
Igor Lukashin
Каждый выбирает то что ему нравится
безусловно. Я ежжу на работу на автобусике , потому что мне так нравится. Морожу яйца в дубаке, а не в парю в Дубае , потому что мне так нравится.  Как много я о себе не знаю. 😕
источник

IL

Igor Lukashin in RubyRush
Я бы вообще не ездил на работу)
источник