J'ai vu des questions similaires à la mienne, mais rien que je recherchais vraiment corrigé mon problème. Ce code que j'ai, que j'ai reçu de Je veux ma liste finale à scinder de zéro index sur le premier élément sur le premier tuple et ainsi de suite, en utilisant une boucle ou un autre itérateur. Si quelqu'un pouvait le faire en utilisant des boucles, il serait plus facile pour moi de voir comment vous comprenez le problème, puis je peux essayer de vous adapter à Utilisation de code plus court.
Donc, fondamentalement, je veux diviser une liste, afin de supprimer des éléments et de la concaténer. Ces éléments correspondent à des index donnés par une liste de tuples.
Quelque chose comme ça, p>
P> P>
4 Réponses :
Comme ceci: sortie: p>
Trier les indices en utilisant trié code> et
del code> les tranches. Vous avez besoin
Reverse = true code> sinon, les indices des tranches ultérieures sont incorrects.
print(arr[0:indices[0][0]] + arr[indices[0][1]:indices[1][0]] + arr[indices[1][1]:])
>>> ['x', 'y', 'b', 'c', 'd', 'g', 2, 3, 4]
['x', 'y', 'b', 'c', 'd', 'g', 2, 3, 4] ['x', 'y', 'b', 'c', 'd', 'g', 2, 3, 4]
Salut @blakev pourriez-vous m'expliquer ce que cet iTertools.chain.from_iterable est vraiment? Je pense que la pièce de code pourrait fonctionner. Mais je suis nouveau à Python et ces méthodes de fantaisie sont difficiles à comprendre!
iTERTOOLS.CHAIN.FROM_ITERABLE CODE> prend une liste de listes et la compresse dans une liste "plate". Documentation Python .
J'utilise l'exemple de Jimithypicker . Je modifie la liste d'index (éléments supprimés), car toujours qu'un indice a été supprimé la taille de la liste de la liste.
Dans ce cas, il est nécessaire de changer le deuxième indice! Le nombre ne correspond pas à la sortie souhaitée. de
Les indices = [(2,4), (7,9)] ont la sortie: ['X', 'Y', 'A', 'B', 'C', "D", " g ', 2, 3, 4] p>
Pourriez-vous ajouter le résultat final attendu? Cela aidera à comprendre votre question.
Bien sûr, je viens de l'ajouter.
Votre sortie ne correspond pas à votre question. Lorsque je copie et collez votre code, les valeurs de votre résultat attendu sont erronées.
J'ai ajouté une réponse selon votre logique
final_arr code>, mais la sortie est différente de celle que vous décrivez dans
#returns code>. Si ce n'est pas la sortie attendue, faites-le nous savoir.