Почему print (zip (* A)) выдает вывод в виде, но ожидаемый результат при выполнении set (zip (* A))? Обратите внимание, что А является списком - PullRequest
0 голосов
/ 22 октября 2019

Я понимаю, что это объект, но не могли бы вы рассказать о том, как он может отображаться в разные списки?

1 Ответ

0 голосов
/ 22 октября 2019

В Python функции zip возвращают пользовательский объект-итератор, который вычисляет каждый кортеж элементов из последовательности, которую им лениво присваивается. У этого объекта нет метода __repr__, поэтому при печати он выдает значение по умолчанию <zip object at <address>>. Затем конструктор set оценил созданный итератор, создав набор кортежей. Наборы имеют __repr__, поэтому при печати набора будет получен ожидаемый результат.

...