yield- все статьи тега
Альтернатива IEnumerable.Пропустить(1).Возьмите(1).Одиночный()
У меня трудное время с кажущейся легкой и неловкой проблемой. Все, что мне нужно, - это следующий элемент в IEnumberable без использования Skip(1).Возьмите(1).Одиночный(). Этот пример иллюстрирует основную проблему. private char _nextChar; private IEnumerable<char> getAlphabet() { yield return 'A'; yield return 'B'; yield return 'C'; } public void sortAlphabet() { foreach (char alpha in getAlphabet()) { switch (alpha) { case 'A': //W ...
Для чего используется ключевое слово yield в C#?
В How Can I Expose Only a Fragment of IList вопрос один из ответов имел следующий фрагмент кода: IEnumerable<object> FilteredList() { foreach( object item in FullList ) { if( IsItemInPartialList( item ) yield return item; } } что там делает ключевое слово yield? Я видел его ссылки в нескольких местах и еще один вопрос, но я не совсем понял, что он на самом деле делает. Я привык думать о выходе в смысле того, что одна нить уступает другой, но здесь это н ...
Какова доходность Scala?
Я понимаю выход Рубина и питона. Что делает выход Scala? ...
Как Я Могу Ждать В Узле.js (Javascript), l нужно сделать паузу на некоторое время
Я разрабатываю консоль, как скрипт для личных нужд... Мне нужно быть в состоянии сделать паузу на длительное время, но как узел.js из моих исследований не имеет возможности остановиться по мере необходимости.... Его становится трудно читать информацию о пользователях после определенного периода времени... IV видел какой-то код там, но я считаю, что они должны иметь другие коды внутри них для их работы, такие как: setTimeout(function() { }, 3000); но эта проблема, мне нужно все после этой стро ...
В C#, почему анонимный метод не может содержать оператор yield?
Я подумал, что было бы неплохо сделать что-то вроде этого (с лямбда делает возврат доходности): public IList<T> Find<T>(Expression<Func<T, bool>> expression) where T : class, new() { IList<T> list = GetList<T>(); var fun = expression.Compile(); var items = () => { foreach (var item in list) if (fun.Invoke(item)) yield return item; // This is not allowed by C# } return items.ToList(); } однако я об ...
Python: выражение генератора и выход
в Python, есть ли разница между созданием объекта генератор через выражение генератор и с помощью доходность заявление? используя доходность: def Generator(x, y): for i in xrange(x): for j in xrange(y): yield(i, j) используя выражение генератор: def Generator(x, y): return ((i, j) for i in xrange(x) for j in xrange(y)) обе функции возвращают генераторные объекты, которые производят кортежи, например (0,0), (0,1) и т. д. какие-либо преимущества одного или друго ...
выход в списке понимания и генераторных выражений
следующее поведение кажется мне довольно нелогичным (Python 3.4): >>> [(yield i) for i in range(3)] <generator object <listcomp> at 0x0245C148> >>> list([(yield i) for i in range(3)]) [0, 1, 2] >>> list((yield i) for i in range(3)) [0, None, 1, None, 2, None] промежуточные значения последней строки на самом деле не всегда None, Они все, что мы send в генератор, эквивалентный (я думаю) в следующий генератор: def f(): for i in range(3): yield (yi ...