[英]Printing Multiple Lists using Format
我有2個可變大小的列表,需要彼此並排打印。 例如,如果
A = [30, 40, 50]
B = [1,2,3]
然后,我想打印一個看起來像這樣的輸出:
A 30 B 1 A 40 B 2 A 50 B 3
我嘗試過類似的東西
print (len(A)* ('A {} B {}').format(*A,*B)
但這並沒有給我我想要的東西。
任何幫助,將不勝感激。
您可以壓縮兩個列表:
A = [30, 40, 50]
B = [1,2,3]
result = ' '.join('A {} B {}'.format(a, b) for a, b in zip(A, B))
print(result)
產量
A 30 B 1 A 40 B 2 A 50 B 3
使用enumerate
的簡單迭代
例如:
A = [30, 40, 50]
B = [1,2,3]
print(" ".join("A {} B {}".format(v, B[i]) for i,v in enumerate(A)))
輸出:
A 30 B 1 A 40 B 2 A 50 B 3
一種可能的解決方案:
print(*map(lambda x, y: "A {} B {}".format(x, y), A, B))
lambda x, y
- lambda函數接受2個參數( A
和B
每個元素)並創建一個名為map
的數據結構(類似於list)。 在此之后,我們將類似map
的數據結構視為常規list
並打印每個特定元素。
輸入
A = [1, 2, 3]
B = [4, 5, 6]
中級結果
僅供參考。
print(*map(["A 1 B 4", "A 2 B 5", "A 3 B 6"]))
產量
A 1 B 4 A 2 B 5 A 3 B 6
如果其中一個數組更短,它將返回以下內容:
輸入
A = [1, 2]
B = [4, 5, 6]
產量
A 1 B 4 A 2 B 5
有關詳細信息,請查看地圖 。
受到問答的啟發
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.