Почему я получаю сообщение об ошибке при использовании функции печати с Python iter? - PullRequest
0 голосов
/ 24 марта 2019

Когда я использую print(list(my_iter)) в коде перед печатью, выдается ошибка:

a = [4, 7, 0, 3]
my_iter = iter(a)
print(list(my_iter))

print(my_iter.__next__())
print(my_iter.__next__())

>StopIteration

но если я это прокомментирую, все будет нормально. Почему?

a = [4, 7, 0, 3]
my_iter = iter(a)
# print(list(my_iter))

print(my_iter.__next__())
print(my_iter.__next__())

1 Ответ

1 голос
/ 24 марта 2019

Питон iter может быть пройден только один раз.Называя его списком, вы «использовали его» - вы должны инициализировать его снова, если хотите позвонить __next__, так как вы достигли конца.

Вы можете прочитать о них больше здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...