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

Генератор - это обобщение подпрограммы, в основном используемое для упрощения написания итераторов. Оператор yield в генераторе не указывает сопрограмму, к которой нужно перейти, а скорее передает значение обратно в родительскую процедуру.

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 = …



8
Ruby on Rails генерирует поле модели: тип - каковы варианты для поля: тип?
Я пытаюсь создать новую модель и забыть синтаксис ссылки на идентификатор другой модели. Я бы сам посмотрел, но не нашел среди всех моих ссылок на документацию по Ruby on Rails, как найти точный источник. $ rails g model Item name:string description:text(а здесь или reference:productили references:product). Но лучший вопрос заключается в …

11
Ленивый метод чтения больших файлов в Python?
У меня очень большой файл 4 ГБ, и когда я пытаюсь прочитать его, мой компьютер зависает. Поэтому я хочу прочитать его по частям, и после обработки каждого куска сохранить обработанный фрагмент в другой файл и прочитать следующий фрагмент. Есть ли способ для yieldэтих частей? Я хотел бы иметь ленивый метод …

7
Могу ли я использовать синтаксис функции стрелки ES6 с генераторами? (обозначение стрелки)
т.е. как я могу выразить это: function *(next) {} со стрелками Я перепробовал все комбинации, которые мог придумать, и не могу найти никакой документации по этому вопросу. (в настоящее время используется узел v0.11.14)

8
Что значит yield в PHP?
Я недавно наткнулся на этот код: function xrange($min, $max) { for ($i = $min; $i <= $max; $i++) { yield $i; } } Я никогда не видел это yieldключевое слово раньше. Пытаясь запустить код, который я получаю Ошибка разбора: синтаксическая ошибка, неожиданный T_VARIABLE в строке x Так что же это …

12
Понимание генераторов в Python
Я сейчас читаю кулинарную книгу по Python и сейчас смотрю на генераторы. Мне трудно заставить мою голову обернуться. Как я пришел из Java-фона, есть ли Java-эквивалент? В книге говорилось о «Производителе / ​​Потребителе», однако, когда я слышу, что думаю о потоке. Что такое генератор и зачем вы его используете? Без …
218 python  generator 

7
Как выбрать только один предмет из генератора?
У меня есть функция генератора, как показано ниже: def myfunct(): ... yield result Обычный способ вызова этой функции: for r in myfunct(): dostuff(r) Мой вопрос, есть ли способ получить только один элемент из генератора, когда мне нравится? Например, я хотел бы сделать что-то вроде: while True: ... if something: my_element …


11
Как объединить два генератора в Python?
Я хочу изменить следующий код for directory, dirs, files in os.walk(directory_1): do_something() for directory, dirs, files in os.walk(directory_2): do_something() к этому коду: for directory, dirs, files in os.walk(directory_1) + os.walk(directory_2): do_something() Я получаю ошибку: неподдерживаемые типы операндов для +: «генератор» и «генератор» Как объединить два генератора в Python?
188 python  generator 

5
Как мне построить массив из генератора?
Как я могу построить массив из объекта генератора? Позвольте мне проиллюстрировать проблему: >>> import numpy >>> def gimme(): ... for x in xrange(10): ... yield x ... >>> gimme() <generator object at 0x28a1758> >>> list(gimme()) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> numpy.array(xrange(10)) array([0, 1, 2, …
166 python  numpy  generator 


9
Как проверить, является ли объект объектом-генератором в python?
В Python, как проверить, является ли объект объектом-генератором? Пробую это - >>> type(myobject, generator) выдает ошибку - Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'generator' is not defined (Я знаю, что могу проверить, есть ли у объекта nextметод для того, чтобы он был генератором, …
157 python  generator 

19
Существует ли механизм зацикливания х раз в ES6 (ECMAScript 6) без изменяемых переменных?
Типичный способ зацикливания xвремени в JavaScript: for (var i = 0; i < x; i++) doStuff(i); Но я не хочу использовать ++оператор или иметь какие-либо изменяемые переменные вообще. Так есть ли в ES6 способ зациклить xвремя другим способом? Я люблю механизм Руби: x.times do |i| do_stuff(i) end Что-нибудь похожее в …

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