【发布时间】:2019-02-12 00:31:56
【问题描述】:
我正在寻找一种从一个大列表创建多个列表的方法。
我想要做的是过滤掉不同的数字组(每周销售的水果数量)形成一个列表。当每组数字命中指示每组应在何处结束的“******”字符串时,每组数字应位于单独的列表中。
Example list:
['apples', '1000', '2000', '2500', '******', 'oranges', '5000', '150', '******']
到目前为止,我得到了这个:
list = []
for i in mainList:
if i.isdigit():
list.append(i)
print(list)
但是,我的代码将所有内容都打印在一个列表中:
#Ouput = ['1000', '2000', '2500', '5000', '150']
如何将输出分成单独的列表,以便将每个水果组打印在单独的“块”中,并且它们都是更大列表的一部分?
我正在寻找的结果应该是这样的:
[['1000', '2000', '2500'], ['5000', '150']]
到目前为止,我已经尝试过:
for i in mainList:
if '******' in i:
break
if i != '******':
result.append(i)
但这会返回相同的列表,我希望它会在第一个 '******' 断点处中断循环。我正在努力在 '******' 分隔符之后分隔列表的每个部分。
如果能得到任何帮助,我将不胜感激。
【问题讨论】:
-
您是否打开以水果名称为关键字的字典?
-
不,我应该为此使用循环。
标签: python python-3.x list