我有一个字符串数组,看起来像这样Itertools打破一个数组子阵
['a', 'b', 'c.1', 'c.2', 'c.3', 'c.4', 'd.1', 'd.2', 'd.3']
我想打破弄成这个样
[['a', 'b', 'c.1'], ['a', 'b', 'c.2'], ['a', 'b', 'c.3'],
['a', 'b', 'd.1'], ['a', 'b', 'd.2'], ['a', 'b', 'd.3'],
['a', 'b', 'd.4']]
我如何去这样做?我的想法是使用GROUPBY在itertools 要达到这样的
['a', 'b', ['c.1', 'c.2', 'c.3'], ['d.1', 'd.2', 'd.3', 'd.4']]
,然后大概就像
result = []
for elem in nestedList:
if isinstance(elem, list):
temp = []
for elem in nestedList:
if not isinstance(elem, list):
temp.append(elem):
temp.append(elem)
result.append(temp)
为了做到这一点,我需要访问下一个元素GROUPBY
(Something like lambda x: '.' not in x and nextelement.split('.')[0] != x)
我该怎么做?
什么是'c .1'?这是无效的语法 – RomanPerekhrest
'c.1'不是一个正确的Python语法。它应该是一个字符串?逻辑是什么?为什么要对'a'和'b'进行区别对待? –
那些应该是字符串吗? –