3 votes

Convertir une liste en une liste de 2 tuples

J'ai une liste :

list = [1, 2, 3]

Je veux obtenir cette liste et ajouter un tuple pour que cette liste devienne comme ceci

T_list = [(1,x), (2, x), (3,x)]

Comment faire ?

10voto

coldspeed Points 111053

Pour ce faire, utilisez une simple liste de compréhension :

>>> your_list = [1, 2, 3]
>>> x = 100
>>> your_list_with_tuples = [(k, x) for k in your_list]
>>> your_list_with_tuples

Salida

[(1, 100), (2, 100), (3, 100)]

De même, ne nommez pas vos variables list , dict etc., parce qu'ils font de l'ombre aux types/fonctions intégrés.

3voto

Iain Dwyer Points 129

Une liste de compréhension ferait l'affaire :

t_list = [(y,x) for y in original_list]

Par ailleurs, le commentateur a raison. Ne donnez pas de nom à vos listes list . C'est une fonction intégrée. L'utiliser pour autre chose pourrait causer des problèmes par la suite.

1voto

goddar Points 26

Voici ma tentative, bien que je ne sois pas un expert.

lis = [1,2,3]
tup = (4, 5, 6)

new_tup = tuple(lis)
new_lis = []
for i in range(0,3):
    data = (new_tup[i],tup[i])
    new_lis.append(data)
print(new_lis)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X