我有 3 個串列
a = ["1", "2", "3", "4", "5", "6"]
b = ['a', 'b', 'c']
c = ["13", "14"]
格式是:
1 3 a
2 13 b
3 13 c
4 14 a
5 14 b
6 14 c
我如何獲得上述格式?
uj5u.com熱心網友回復:
您可以使用itertools.cycle讓串列b回圈并使用配接器itertools.repeat來c重復其專案:
from itertools import repeat, cycle
def repeat_elements(iterable, repeat_count):
for element in cycle(iterable):
yield from repeat(element, repeat_count)
a = ["1", "2", "3", "4", "5", "6"]
b = ['a', 'b', 'c']
c = ["13", "14"]
for x,y,z in zip(a, cycle(b), repeat_elements(c, 3)):
print(x,z,y)
按要求輸出
請注意,此代碼依賴于在元素用完zip時停止迭代。和配接器a都將無限回圈。cyclerepeat_elements
uj5u.com熱心網友回復:
下面的代碼將列印所需的序列,所有字符都在新行中。
for i in c:
for j in b:
for k in a:
print(k,i,j,sep='\n')
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/534274.html
標籤:Python循环嵌套
上一篇:如何有效地比較串列中串列的長度?
下一篇:在二維陣列中連續向后迭代
