我有这个清单
list = [name1,desc1,price1,stock1,name2,desc2,price2,stock2]
如何使用简单的for循环操作将其更改为以下内容?
list = [[product#1 name,product#1 desc,product#1 price,product#1 stock],[product#2 name,product#2 desc,product#2 price,product#2 stock]]
答案 0 :(得分:0)
使用re
和itertools.groupby
:
import re
import itertools
l = ['name1','desc1','price1','stock1','name2','desc2','price2','stock2']
[['product#%s %s' %(k, re.sub('\d+', '', i)) for i in g]
for k, g in itertools.groupby(l, lambda x:re.findall('\d+', x)[0])]
输出:
[['product#1 name', 'product#1 desc', 'product#1 price', 'product#1 stock'],
['product#2 name', 'product#2 desc', 'product#2 price', 'product#2 stock']]
答案 1 :(得分:0)
首先,您不能将关键字用作变量名,因此请更改变量名list
的名称,然后可以对列表中的每个项目进行尝试
for item in lists:
for i in item:
# your operation here for individual items
或者您可以只使用一个带有索引号的循环进行编辑,
for item in lists:
print(item[0]) # you can say item[0] is the product name and so