sorted_bounds我想基于每個其他元組創建兩個列表。bounds = [1078.08, 1078.816, 1078.924, 1079.348, 1079.448, 1079.476]sorted_bounds = list(zip(bounds,bounds[1:]))print(sorted_bounds)# -> [(1078.08, 1078.816), (1078.816, 1078.924), (1078.924, 1079.348), (1079.348, 1079.448), (1079.448, 1079.476)]期望的輸出:list1 = [(1078.08, 1078.816), (1078.924, 1079.348), (1079.448, 1079.476)] list2 = [(1078.816, 1078.924), (1079.348, 1079.448)]我該怎么做?我完全一片空白。
2 回答

烙印99
TA貢獻1829條經驗 獲得超13個贊
list1 = sorted_bounds[0::2] list2 = sorted_bounds[1::2]
括號中的第三個值是“step”,因此在本例中是每隔一個元素。

慕斯王
TA貢獻1864條經驗 獲得超2個贊
試圖想出一種在單次傳遞中完成此操作的方法,但這里有一個在兩次傳遞中完成此操作的干凈方法:
list1 = [x for i, x in enumerate(sorted_bounds) if not i % 2]
list2 = [x for i, x in enumerate(sorted_bounds) if i % 2]
print(list1)
print(list2)
結果:
[(1078.08, 1078.816), (1078.924, 1079.348), (1079.448, 1079.476)]
[(1078.816, 1078.924), (1079.348, 1079.448)]
添加回答
舉報
0/150
提交
取消