5 回答

TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超5個(gè)贊
您的列表是列表中的列表中的列表,這解釋了額外的括號。
這有效:
result = [[[['10.0.0.0-E', '10.0.0.0-B'], ['172.0.0.0-E', '172.0.0.0-B'], ['12.0.0.0-E', '12.0.0.0-B']]]]
for item in result[0][0]:
print(f'{item[0]} - {item[1]}')
result[0][0]選擇 的第一個(gè)元素result(一個(gè)列表),然后選擇其第一個(gè)元素(另一個(gè)列表) - for 循環(huán)然后將該列表的每個(gè)元素item一次分配給一個(gè)。
print(f'{item[0]} - {item[1]}')獲取該項(xiàng)目并打印您需要的格式化字符串:
10.0.0.0-E - 10.0.0.0-B
172.0.0.0-E - 172.0.0.0-B
12.0.0.0-E - 12.0.0.0-B

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超3個(gè)贊
我希望這對我的朋友有幫助:
a = [[[['10.0.0.0-E', '10.0.0.0-B'], ['172.0.0.0-E', '172.0.0.0-B'], ['12.0.0.0-E', '12.0.0.0-B']]]]
main_list = a[0][0]
for i in range(len(main_list)):
print(main_list[i][0], '-' ,main_list[i][1])
輸出:
10.0.0.0-E - 10.0.0.0-B
172.0.0.0-E - 172.0.0.0-B
12.0.0.0-E - 12.0.0.0-B

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個(gè)贊
所以你基本上有四個(gè)級別的嵌套列表:
[ # <- first level
[ # <- second level
[ # <- third level
['10.0.0.0-E', '10.0.0.0-B'],
['172.0.0.0-E', '172.0.0.0-B'],
['12.0.0.0-E', '12.0.0.0-B']
]
]
]
在這種情況下,第一級和第二級并不重要。您想要迭代第三層并連接字符串。
首先刪除這兩個(gè)外部級別:
my_list = [[[['10.0.0.0-E', '10.0.0.0-B'], ['172.0.0.0-E', '172.0.0.0-B'], ['12.0.0.0-E', '12.0.0.0-B']]]]
list_of_pairs = my_list[0][0]
然后迭代list_of_pairs使用for pair in list_of_pairs并連接字符串:
for pair in list_of_pairs:
print(' - '.join(pair))
把它們放在一起:
my_list = [[[['10.0.0.0-E', '10.0.0.0-B'], ['172.0.0.0-E', '172.0.0.0-B'], ['12.0.0.0-E', '12.0.0.0-B']]]]
for pair in my_list[0][0]:
print(' - '.join(pair))
或者,擺脫顯式的 for 循環(huán):
my_list = [[[['10.0.0.0-E', '10.0.0.0-B'], ['172.0.0.0-E', '172.0.0.0-B'], ['12.0.0.0-E', '12.0.0.0-B']]]]
print('\n'.join(' - '.join(pair) for pair in my_list[0][0]))

TA貢獻(xiàn)1873條經(jīng)驗(yàn) 獲得超9個(gè)贊
假設(shè)內(nèi)部列表始終是一對字符串:
from functools import reduce
a = [[[['10.0.0.0-E', '10.0.0.0-B'], ['172.0.0.0-E', '172.0.0.0-B'], ['12.0.0.0-E', '12.0.0.0-B']]]]
if a:
while type(a[0]) == list:
a = reduce(lambda x,y:x+y,a)
for i in range(0,len(a),2):
print(a[i],a[i+1])

TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超7個(gè)贊
您是否嘗試過像這樣循環(huán)指定索引
for i in x[0][0]:
print(i)
Result
['10.0.0.0-E', '10.0.0.0-B']
['172.0.0.0-E', '172.0.0.0-B']
['12.0.0.0-E', '12.0.0.0-B']
或者你當(dāng)然可以像這個(gè)例子一樣使用end=''
for i in x[0][0]:
for j in I:
print(j, end='')
print(end='\n')
Result:
10.0.0.0-E10.0.0.0-B
172.0.0.0-E172.0.0.0-B
12.0.0.0-E12.0.0.0-B
- 5 回答
- 0 關(guān)注
- 246 瀏覽
添加回答
舉報(bào)