我有一个列表,我必须将其分为9部分,但是我得到了一个列表列表,我想获得一个元组列表。我不知道是否可以在python上执行此操作。
data= [1, 'PURECO', 'WOMAN', 'MARISCAL', 'MULLER', 28, 'DIABETES', 'APC', 2020-01-03, 2, 'CAO', 'WOMAN', 'CAL Y MAYOR', 'URTIZ', 34, 'OBESIDAD TIPO 1', 'APC', 2020-01-03]
我尝试过:
data = [data[i:i+9] for i in range(0, len(data),9)]
我知道了:
data= [[1, 'PURECO', 'WOMAN', 'MARISCAL', 'MULLER', 28, 'DIABETES', 'APC', 2020-01-03],[ 2, 'CAO', 'WOMAN', 'CAL Y MAYOR', 'URTIZ', 34, 'OBESIDAD TIPO 1', 'APC', 2020-01-03]]
但是,我想得到这个:
data= [(1, 'PURECO', 'WOMAN', 'MARISCAL', 'MULLER', 28, 'DIABETES', 'APC', 2020-01-03),(2, 'CAO', 'WOMAN', 'CAL Y MAYOR', 'URTIZ', 34, 'OBESIDAD TIPO 1', 'APC', 2020-01-03)]
您的解决方案即将完成,您只需转换为tuple
:
data = [tuple(data[i:i+9]) for i in range(0, len(data),9)]
^ ^
this will convert inner lists to tuples
>>> [tuple(data[i:i+9]) for i in range(0, len(data),9)] [(1, 'PURECO', 'WOMAN', 'MARISCAL', 'MULLER', 28, 'DIABETES', 'APC', '2020-01-03'), (2, 'CAO', 'WOMAN', 'CAL Y MAYOR', 'URTIZ', 34, 'OBESIDAD TIPO 1', 'APC', '2020-01-03')]
您可以尝试以下方法:
list_of_tuples = [tuple(item) for item in data]