itertools.zip_longest(p, p, &hellip)は,最も長いシーケンスに端に到達するまで,すべてシーケンスをタプルで出力する.先に端に到達したシーケンスの値は,以降 None になる.
import itertools
p = [x for x in range(1, 10)]
q = 'abcdef'
r = 'ABCD'
for x in itertools.zip_longest(p, q, r):
print('x:', x)
x: (1, 'a', 'A') x: (2, 'b', 'B') x: (3, 'c', 'C') x: (4, 'd', 'D') x: (5, 'e', None) x: (6, 'f', None) x: (7, None, None) x: (8, None, None) x: (9, None, None)