[英]Given a 2D list of print range based on column
我目前有一個二維列表。 該列表將始終為 2 行,但它可以是多列
idx = [[0,4],[2, 6]] or idx = [[0,4,2,7],[2,6,5,10]]
我需要根據列生成一個范圍。
例如,在第一列idx[0]
上,它應該生成0,1,2
,第二列idx[1]
應該生成4,5,6
,依此類推。
這是我的列表idx = [1,2]
的代碼,但我不知道如何為 2d 列表執行此操作。
for i in range(len(idx)):
for j in range(idx[i]):
print(j)
由於您需要一種方法來配對每行中的相應數字,因此在此處使用zip
是一個好主意。
idx = [[0, 4, 2, 7], [2, 6, 5, 10]]
for lower, upper in zip(*idx):
print(list(range(lower, upper + 1))) # upper limit inclusive
# or create an output list and append to it
來自 Python help
文本,
zip object 產生 n 長度的元組,其中 n 是作為位置 arguments 傳遞給 zip() 的可迭代的數量。 每個元組中的第 i 個元素來自 zip() 的第 i 個可迭代參數。 這一直持續到最短的參數用完為止。
您可以通過在任何 Python 解釋器中鍵入help(zip)
來找到有關zip
的更多信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.