0
У меня есть хэш с 5 элементами, например:Рубин - Hash - Комбинация
my_hash = {a: 'qwe', b: 'zcx', c: 'dss', d: 'ccc', e: 'www' }
Моя цель состоит в том, чтобы вернуться каждый раз в хэш петли, но без одного элемента, как:
my_hash = {a: 'qwe', b: 'zcx', c: 'dss', d: 'ccc' }
затем
my_hash = {a: 'qwe', b: 'zcx', c: 'dss', e: 'www' }
и так далее
Использование массива Я бы использовал метод комбинации, но когда я использую хэш? Я хотел бы сделать это так же легко, как это возможно
Yours лучше. Уточнение: 'my_hash.to_a.combination (4) .lazy.map (&: to_h) .each', чтобы получить цикл OP. – Amadan
Почему вы хотите использовать ленивое перечисление для статических данных? – Glupo
@Glupo: Что вы имеете в виду, статические данные? Цель - избежать создания массива хешей. С его помощью 'map' возвращает' Enumerator :: Lazy'; без него 'map' создает экземпляр' Array' того же размера, что и тот, который создается 'комбинацией'. – Amadan