从列表中删除特定元素,然后创建新的嵌套列表



我想创建一个嵌套列表,其中包含来自一个具有5k多个元素的大型列表的列表。这是我现有的清单,

x = [925.5, 310.0, 911.5, 1492.0,
1658.5,
1642.5,
747.0,
324.5,
831.5,
1173.0,
1009.5,
1830.5,
1376.0,
0.0,
749.0,
1492.0,
1834.5,
913.5,
920.5,
1658.5,
1644.5,
303.0,
833.0,
1172.5,
1381.0,
1008.5,
1680.5,
1341.5,
0.0,
749.0,
1492.0,
1834.5,
913.5,
920.5,
1658.5,
1645.0,
303.5,
833.0]

我想要一个这样的列表(当0出现时,它将被删除,并给我一个新的列表(。

x_new = [[925.5, 310.0, 911.5, 1492.0, 1658.5, 1642.5, 747.0, 324.5, 831.5, 1173.0, 1009.5, 1830.5, 1376.0],[749.0, 1492.0, 1834.5, 913.5, 920.5, 1658.5, 1644.5, 303.0, 833.0, 1172.5, 1381.0, 1008.5, 1680.5, 1341.5],[749.0, 1492.0, 1834.5, 913.5, 920.5, 1658.5, 1645.0, 303.5, 833.0]]
x_new = []
nested = []
for i in x:
if i != 0:
nested.append(i)
else:
x_new.append(nested)
nested = []
if nested:
x_new.append(nested)

最新更新