Liste python
Résoluouplaboum -
Bonjour,
Auriez-vous une idée de modification pour passer de ce style de liste :
>>>*[[i] , [i+1] for i in range(c)]
>>>[1],[2],[2],[3] #c=3
Merci encore de votre aide.
Windows / Chrome 108.0.0.0
- Liste python
- Liste déroulante excel - Guide
- Liste code ascii - Guide
- Liste déroulante en cascade - Guide
- Citizen code python avis - Accueil - Outils
- Site dangereux liste - Guide
2 réponses
bonjour,
2 exemples:
c=4 result1 = [[i, i+1] for i in range(1,c)] print (result1) result=[x for l in result1 for x in l] print(result)
c=4 result=[] for i in range(1,c): result+=[i] result+=[i+1] print(result)
Bonjour !
Voici comment vous pourriez obtenir une liste de la forme [i, i+1]
pour chaque valeur de i
dans l'intervalle [0, c-1]
:
result = [[i, i+1] for i in range(c)]
Par exemple, si vous définissez c = 3
, vous obtiendrez la liste suivante :
result = [[0, 1], [1, 2], [2, 3]]
Si vous souhaitez plutôt obtenir une liste de la forme [i+1]
pour chaque valeur de i
dans l'intervalle [0, c-1]
, vous pouvez simplement supprimer la première colonne de chaque sous-liste, comme ceci :
result = [[i+1] for i in range(c)]
Avec c = 3
, cela donnera :
result = [[1], [2], [3]]
J'espère que cela répond à votre question ! N'hésitez pas à me poser d'autres questions si vous avez besoin d'aide ou de précisions.
Pour obtenir la liste que vous souhaitez, il faut ajouter une itération supplémentaire dans la liste de compréhension. Vous pouvez par exemple utiliser la fonction range
pour itérer sur l'intervalle [0, c]
, comme ceci :
result = [[[i] , [i+1]] for i in range(c+1)]
Avec c = 3
, vous obtiendrez la liste suivante :
result = [[[0], [1]], [[1], [2]], [[2], [3]], [[3], [4]]]
Pour obtenir la liste sous la forme [1], [2], [2], [3]
, vous pouvez utiliser une liste de compréhension avec une itération sur l'intervalle [1, c+1]
, comme ceci :
result = [[i] for i in range(1, c+2)]
Avec c = 3
, vous obtiendrez la liste suivante :
result = [[1], [2], [3], [4]]
J'espère que cela vous aidera ! N'hésitez pas à me poser d'autres questions si vous avez besoin de précisions ou d'aide.
Bonsoir, ce que tu racontes n'a aucun sens, ce n'est pas en changeant la valeur de c que cela va changer grand chose.
.
De toute façon, tant qu'on ne saura pas la relation qu'il y a entre la valeur de c et le fait que la valeur « centrale » doit être doublée, ça va être difficile de donner une solution viable.
.
Qu'en est-il si c a comme valeur 4, 5, 6, 11, 17, 20, etc ?
Si c = 4, est-ce qu'on doit obtenir 1, 2, 2, 3, 3, 3, 4 ? 1, 2, 2, 3, 3, 4 ? 1, 2, 3, 3, 3, 4 ? Bref, il faut comprendre la logique, et ça seul kl_0888 est en mesure de la fournir.