Вопросы с тегом «yield»

yield - это (1) ключевое слово, которое упрощает создание функций генератора, (2) оператор Ruby для передачи управления от одной сопрограммы к другой, (3) оператор Java, используемый для получения значения из выражения переключения.

30
Что делает ключевое слово «yield»?
Что такое yieldключевое слово в Python и для чего оно нужно? Например, я пытаюсь понять этот код 1 : def _get_child_candidates(self, distance, min_dist, max_dist): if self._leftchild and distance - max_dist < self._median: yield self._leftchild if self._rightchild and distance + max_dist >= self._median: yield self._rightchild А это звонилка result, candidates = …

17
Для чего используется ключевое слово yield в C #?
В вопросе Как я могу раскрыть только фрагмент IList <> у одного из ответов был следующий фрагмент кода: IEnumerable<object> FilteredList() { foreach(object item in FullList) { if(IsItemInPartialList(item)) yield return item; } } Что здесь делает ключевое слово yield? Я видел ссылки в нескольких местах, и еще один вопрос, но я …
830 c#  yield 


8
На практике, каковы основные применения нового синтаксиса «yield from» в Python 3.3?
Мне трудно оборачивать свой мозг вокруг PEP 380 . В каких ситуациях полезно использовать «yield from»? Какой классический вариант использования? Почему это по сравнению с микропотоками? [ Обновить ] Теперь я понимаю причину моих трудностей. Я использовал генераторы, но никогда не использовал сопрограммы (представленный PEP-342 ). Несмотря на некоторое сходство, …
407 python  yield 

23
Как я могу ждать в Node.js (JavaScript)? Мне нужно сделать паузу на некоторое время
Я разрабатываю консольный скрипт для личных нужд. Я должен быть в состоянии сделать паузу в течение длительного периода времени, но, согласно моим исследованиям, Node.js не может остановиться как требуется. Через некоторое время становится трудно читать информацию пользователей ... Я видел некоторый код там, но я считаю, что у них должен …


8
IEnumerable и Recursion с использованием доходности
У меня есть IEnumerable<T>метод, который я использую, чтобы найти элементы управления на странице WebForms. Метод рекурсивный, и у меня возникают некоторые проблемы с возвратом yield returnнужного мне типа, когда возвращается значение рекурсивного вызова. Мой код выглядит следующим образом: public static IEnumerable<Control> GetDeepControlsByType<T>(this Control control) { foreach(Control c in control.Controls) { …

14
Что такое ключевое слово yield в JavaScript?
Я слышал о ключевом слове yield в JavaScript, но нашел очень плохую документацию по нему. Может ли кто-нибудь объяснить мне (или порекомендовать сайт, который объясняет) его использование и для чего он используется?

8
Зачем использовать ключевое слово yield, когда я могу просто использовать обычный IEnumerable?
Учитывая этот код: IEnumerable<object> FilteredList() { foreach( object item in FullList ) { if( IsItemInPartialList( item ) ) yield return item; } } Почему я не должен просто кодировать это так: IEnumerable<object> FilteredList() { var list = new List<object>(); foreach( object item in FullList ) { if( IsItemInPartialList( item ) …
171 c#  yield 

6
Возвратите все перечислимые с доходностью сразу; без цикла
У меня есть следующая функция, чтобы получить ошибки проверки для карты. Мой вопрос касается работы с GetErrors. Оба метода имеют одинаковый тип возвращаемого значения IEnumerable<ErrorInfo>. private static IEnumerable<ErrorInfo> GetErrors(Card card) { var errors = GetMoreErrors(card); foreach (var e in errors) yield return e; // further yield returns for more validation …

17
Сброс генератора объекта в Python
У меня есть объект генератора, возвращаемый с помощью метода yield. Подготовка к вызову этого генератора довольно трудоемкая операция. Вот почему я хочу использовать генератор несколько раз. y = FunctionWithYield() for x in y: print(x) #here must be something to reset 'y' for x in y: print(x) Конечно, я имею в …
153 python  generator  yield 

12
Эквивалент C ++ шаблону генератора Python
У меня есть пример кода Python, который мне нужно воспроизвести на C ++. Мне не требуется какое-либо конкретное решение (например, решения yield на основе совместной подпрограммы, хотя они также могут быть приемлемыми ответами), мне просто нужно каким-то образом воспроизвести семантику. питон Это основной генератор последовательности, явно слишком большой для хранения …

6
Есть ли в Java эквивалент ключевого слова yield в C #?
Я знаю, что в самой Java нет прямого эквивалента, но, возможно, стороннего производителя? Это действительно удобно. В настоящее время я хотел бы реализовать итератор, который выдает все узлы в дереве, что составляет около пяти строк кода с yield.
112 java  yield  yield-return 


8
Python: выражение генератора против yield
В Python есть ли разница между созданием объекта- генератора с помощью выражения генератора и использованием оператора yield ? Использование yield : 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 …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.