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

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

308
Ruby on Rails генерирует поле модели: тип - каковы варианты для поля: тип?

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

290
Ленивый метод чтения больших файлов в Python?

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

243
Могу ли я использовать синтаксис функции стрелки ES6 с генераторами? (обозначение стрелки)

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

232
Что значит yield в PHP?

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

218
Понимание генераторов в Python

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

214
Как выбрать только один предмет из генератора?

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

188
Как объединить два генератора в 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() Я получаю ошибку:...

157
Как проверить, является ли объект объектом-генератором в python?

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

157
Существует ли механизм зацикливания х раз в ES6 (ECMAScript 6) без изменяемых переменных?

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

153
Сброс генератора объекта в Python

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

146
Какие-нибудь инструменты для генерации схемы XSD из экземпляра документа XML? [закрыто]

Закрыто. Этот вопрос не соответствует рекомендациям по переполнению стека . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме переполнения стека. Закрыто 6 лет назад . Улучшить этот вопрос Я ищу инструмент, который будет принимать...

119
Есть ли выражение для бесконечного генератора?

Есть ли простое выражение генератора, которое может давать бесконечные элементы? Это чисто теоретический вопрос. Здесь нет нужды в "практическом" ответе :) Например, легко сделать конечный генератор: my_gen = (0 for i in xrange(42)) Однако, чтобы создать бесконечное число, мне нужно «засорить» свое...