我创建了一个数组,其值如下
size=[9, 41, 1368, 887, 307, 9, 114, 81, 9, 34, 12, 13, 12, 4, 548, 3, 77]
我需要把这些值分组,保持一个常量= 9
需要的示例输出
组1
b=41
c=1368,887,307
组2
b=114
c=81
第三组
b=34
c=12,13,12,4,548,3,77
我不知道如何实现这一点,我已经尝试了以下代码。
for i in range(0,len(size)):
if size[i-1]!=9:
if(size[0]-size[i])!=0:
print(size[i])
您必须扫描这些9
值的输入,每次遇到它时,启动一个新列表来收集其他值。
一旦你有了这些子列表,你就可以迭代它们并报告它们的b
和c
部分:
size = [9, 41, 1368, 887, 307, 9, 114, 81, 9, 34,
12, 13, 12, 4, 548, 3, 77]
# Spread data into sub lists, separated by 9-values
result = [[]]
for val in size:
if val == 9:
result.append([]) # Start a new sub list
else:
result[-1].append(val) # Append to last sub list
# Remove empty sublists
result = [lst for lst in result if lst]
# Output in terms of b and c:
for b, *c in result:
print("b=", b)
print("c=", c)