如何在每次循环时创建新列表并在附加元素后重复循环?

  • 本文关键字:循环 元素 创建 新列表 列表 python
  • 更新时间 :
  • 英文 :


这是我的列表

lst = [1,2,3,4,4,5,6,7,8,8,9,9,10,1]

我想要这个输出

[1][2,3][4,4,5][6,7][8,8,9][9][10,1]

如果数字是偶数,下一个数字是奇数,则应break,下一个奇数或偶数应附加到另一个列表中。 如果有偶数,则在找到下一个奇数之前,不应打破列表。

lis = [1,2,3,4,4,5,6,7,8,8,9,9,10,1] 
tempList = []
result = []
for item in lis:
tempList.append(item)
if item % 2 == 1:
result.append(tempList)
tempList = []
print(result)

在这里很难用break来制定解决方案。

我可以建议你先更简洁地重写你的伪算法。像这样:

  1. 对于输入列表中的每个项目,将其追加到输出列表。
  2. 如果项目是奇数,则记住当前的输出列表,然后开始 一个新的。

然后,在Python中实现它看起来像:

input_list = [1, 2, 3, 4, 4, 5, 6, 7, 8, 8, 9, 9, 10, 1]
output_list = [[]]
for x in input_list:
output_list[-1].append(x)
if x % 2 != 0:
output_list.append([])

最新更新