Python3如何實現兩個列表的交叉列印?
例如:titlelist = [T1,T2,T3]
urlList = [U1,U2,U3]
怎樣將兩個列表交叉列印出這樣的效果:
T1
U1
T2
U2
T3
U3
請看
def iter_cross(*iterables):
copy = [iter(item) for item in iterables]
while copy: # 一直迭代到copy列表為空
for item in copy:
try:
yield next(item)
except StopIteration:
# 如果next()拋出StopIeration異常
# 那就把item從copy中刪去
copy.pop(copy.index(item))
上面這個函數可以對任意多個list或tuple交叉迭代,先看看你要求的效果
titlelist = ["T1","T2","T3"]
urllist = ["U1","U2","U3"]
for i in iter_cross(titlelist, urllist):
print(i, end=" ")
&>&>&> T1 U1 T2 U2 T3 U3
再舉個演示
import string
l0 = range(1, 27)
l1 = string.ascii_lowercase
l2 = string.ascii_uppercase
for i in iter_cross(l0, l1, l2):
print(i, end=" ")
&>&>&> 1 a A 2 b B 3 c C 4 d D 5 e E 6 f F 7 g G 8 h H 9 i I 10 j J 11 k K 12 l L 13 m M 14 n N 15 o O 16 p P 17 q Q 18 r R 19 s S 20 t T 21 u U 22 v V 23 w W 24 x X 25 y Y 26 z Z
推薦閱讀:
※初學python,pycharm和Spyder哪個好?
※python3.5有哪些可用的第三方模塊?
※如果只推介一本python3的書籍,你會推介哪一本?
※如何從Python 3.4 升級到 Python 3.5?
※python列表賦值的問題?