如何将列表转换为元组

时间:2019-07-09 12:39:58

标签: python python-3.x

我有一个变量来精确说明expl lgt = 3的元组的长度 我想转换此列表:

list=['Tout', 'le', 'monde', 'aime', 'le', 'chocolat', 'Le', 'est', 'une', 'source', 'agent', 'securité', 'chocolat', 'magnesium']

至:

('Tout', 'le', 'monde')
('le', 'monde', 'aime')
('monde', 'aime', 'le')
('aime', 'le', 'chocolat')
('le', 'chocolat', 'Le')
('chocolat', 'Le', 'est')
('Le', 'est', 'une')
('est', 'une', 'source')
('une', 'source', 'agent')
('source', 'agent', 'securité')
('agent', 'securité', 'chocolat')
('securité', 'chocolat', 'magnesium')
('chocolat', 'magnesium', '')

2 个答案:

答案 0 :(得分:0)

要点: 1.使用tuple(list)。 2.使用列表切片。例如)list[i:i+3]

list=['Tout', 'le', 'monde', 'aime', 'le', 'chocolat', 'Le', 'est', 'une', 'source', 'agent', 'securité', 'chocolat', 'magnesium']
tuples = []

list.append('')
lgt = 3
for i in range(len(list)-lgt+1):
    tuples.append(tuple(list[i:i+lgt]))

print (tuples)

请参考以下结果:

[('Tout', 'le', 'monde'), ('le', 'monde', 'aime'), ('monde', 'aime', 'le'), ('aime', 'le', 'chocolat'), ('le', 'chocolat', 'Le'), ('chocolat', 'Le', 'est'), ('Le', 'est', 'une'), ('est', 'une', 'source'), ('une', 'source', 'agent'), ('source', 'agent', 'securité'), ('agent', 'securité', 'chocolat'), ('securité', 'chocolat', 'magnesium'), ('chocolat', 'magnesium', '')]

答案 1 :(得分:0)

list=['Tout', 'le', 'monde', 'aime', 'le', 'chocolat', 'Le', 'est', 'une', 'source', 'agent', 'securité', 'chocolat', 'magnesium']

print ([tuple(list[i:i + 3]) for i in range(len(list) - 1)])

输出:

[('Tout', 'le', 'monde'), ('le', 'monde', 'aime'), ('monde', 'aime', 'le'), ('aime', 'le', 'chocolat'), ('le', 'chocolat', 'Le'), ('chocolat', 'Le', 'est'), ('Le', 'est', 'une'), ('est', 'une', 'source'), ('une', 'source', 'agent'), ('source', 'agent', 'securité'), ('agent', 'securité', 'chocolat'), ('securité', 'chocolat', 'magnesium'), ('chocolat', 'magnesium')]

或:

for i in range(len(list)-1):
    print (tuple(list[i:i + 3]))

输出:

('Tout', 'le', 'monde')
('le', 'monde', 'aime')
('monde', 'aime', 'le')
('aime', 'le', 'chocolat')
('le', 'chocolat', 'Le')
('chocolat', 'Le', 'est')
('Le', 'est', 'une')
('est', 'une', 'source')
('une', 'source', 'agent')
('source', 'agent', 'securité')
('agent', 'securité', 'chocolat')
('securité', 'chocolat', 'magnesium')
('chocolat', 'magnesium')
相关问题