`map`, вызывающая бесконечную петлю в Python 3Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 `map`, вызывающая бесконечную петлю в Python 3

Сообщение Anonymous »

У меня есть следующий код: < /p>
def my_zip(*iterables):
iterators = tuple(map(iter, iterables))
while True:
yield tuple(map(next, iterators))

Когда называется my_zip , он просто создает бесконечный цикл и никогда не заканчивается. Если я вставляю оператор печати (как показано ниже), выясняется, что my_zip бесконечно дает пустые кортежи!
def my_zip(*iterables):
iterators = tuple(map(iter, iterables))
while True:
t = tuple(map(next, iterators))
print(t)
yield t
< /code>
Однако эквивалентный код с выражением генератора работает нормально: < /p>
def my_listcomp_zip(*iterables):
iterators = tuple(iter(it) for it in iterables)
while True:
try:
yield tuple(next(it) for it in iterators)
except:
print("exception caught!")
return

Почему функция с картой не ведет себя, как ожидалось? (Или, если это ожидаемое поведение, как я могу изменить его поведение в соответствии с поведением функции с использованием выражения генератора?)
Я тестирую со следующим кодом:
print(list(my_listcomp_zip(range(5), range(0, 10, 2))))
print(list(my_zip(range(5), range(0, 10, 2))))


Подробнее здесь: https://stackoverflow.com/questions/794 ... n-python-3
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • `map`, вызывающая бесконечную петлю в Python 3
    Anonymous » » в форуме Python
    0 Ответы
    24 Просмотры
    Последнее сообщение Anonymous
  • Запустив бесконечную петлю в Thonny/Python или Rapi Lecks Up IDE, как я могу вырваться из него без перезагрузки?
    Anonymous » » в форуме Python
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Как создать шатер бесконечную петлю слайдера логотипов только с CSS
    Anonymous » » в форуме Html
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Как создать шатер бесконечную петлю слайдера логотипов только с CSS
    Anonymous » » в форуме CSS
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Как создать шатер бесконечную петлю слайдера логотипов только с CSS
    Anonymous » » в форуме Html
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»