Comment ajouter des éléments de 2 listes courtes dans une autre grande liste de tuples?

PRÉDATEUR

Disons que j'ai les listes suivantes:

l1 = [('a','b','c'),('d','e','f'),('g','h','i'),('j','k','l')]
l2 = ['x','y','z']
l3 = ['m','n']

Je veux extraire des éléments de l2 et l3, puis ajouter l2 [i] ( i in range(len(l2))) comme premier élément à l'intérieur de chaque tuple, et l3 [i] ( i in range(len(l2))) comme dernier élément à l'intérieur de chaque tuple.

donc le résultat ressemblera à ce qui suit:

l1 = [('x','a','b','c','m'),('x','a','b','c','n'),('y','a','b','c','m'),('y','a','b','c','n'), ('z','a','b','c','m'),('z','a','b','c','n')]

et oui, le len de l1 sera augmenté.

thefourtheye

Vous pouvez le faire à l'aide de itertools.chain.from_iterableet itertools.product, et obtenir le produit cartésien, comme celui-ci

>>> from itertools import chain, product
>>> from pprint import pprint
>>> pprint([tuple(chain.from_iterable(i)) for i in product(l2, [l1[0]], l3)])
[('x', 'a', 'b', 'c', 'm'),
 ('x', 'a', 'b', 'c', 'n'),
 ('y', 'a', 'b', 'c', 'm'),
 ('y', 'a', 'b', 'c', 'n'),
 ('z', 'a', 'b', 'c', 'm'),
 ('z', 'a', 'b', 'c', 'n')]

Vous trouvez le produit cartésien entre l2, le premier élément de l1et l3. Puisque le résultat sera un tuple avec l'élément from l2(une chaîne) et le premier élément de l1(un tuple) et un élément de l3(une chaîne), nous l'aplatissons avec chain.from_iterable.

Disons que nous n'aplatissons pas les tuples, alors c'est ce que vous obtiendrez

>>> pprint([tuple(items) for items in product(l2, [l1[0]], l3)])
[('x', ('a', 'b', 'c'), 'm'),
 ('x', ('a', 'b', 'c'), 'n'),
 ('y', ('a', 'b', 'c'), 'm'),
 ('y', ('a', 'b', 'c'), 'n'),
 ('z', ('a', 'b', 'c'), 'm'),
 ('z', ('a', 'b', 'c'), 'n')]

C'est pourquoi nous utilisons chain.from_iterableet aplatissons les tuples.

Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.

En cas d'infraction, veuillez [email protected] Supprimer.

modifier le
0

laisse moi dire quelques mots

0commentaires
connexionAprès avoir participé à la revue

Articles connexes

Comment obtenir des éléments sur des listes de tailles différentes dans une autre liste?

comment ajouter des éléments de liste aux tuples dans la liste des tuples

Comment insérer des éléments de liste à l'intérieur de tuples dans une autre liste

Comment fusionner des listes dans une liste de tuples?

Comment ajouter des éléments de liste à une nouvelle colonne de dataframe dans une autre liste dans r?

Comment créer deux listes à partir de tuples à deux éléments stockés dans une liste de listes de tuples

Comment ajouter conditionnellement des tuples d'une liste à une autre liste de tuples ?

Comment itérer sur des éléments de listes au sein d'une liste plus grande ?

Comment fusionner des listes avec des éléments communs dans une liste de listes?

Comment remplacer aléatoirement des éléments entre des listes dans une liste de listes

Ajouter des éléments à une liste de listes en python

Ajouter des éléments à une liste de listes en python

Essayer d'ajouter conditionnellement des tuples d'une liste de tuples à des sous-listes de tuples dans un dictionnaire

Comment décompresser des tuples à élément unique dans une liste de listes

Comment ajouter des éléments d'une liste de manière itérative à deux listes différentes ?

Supprimer et ajouter des éléments dans une liste de listes

Liste des listes de tuples, regrouper par premier élément et ajouter des seconds éléments

Regrouper des éléments dans une liste de listes à l'aide de chaînes d'une autre liste

Comment remplacer des éléments dans une liste de listes dans une plage donnée?

Comment renommer des éléments dans une liste de listes de manière efficace dans R?

Comment vérifier si une liste de listes contient l'un des éléments d'une autre liste

Ajouter des listes à une autre classe de liste

Comment vérifier si une liste contient des éléments d'une autre sous-liste de listes?

Tri des éléments dans une liste de listes

Somme courante des éléments dans une liste de listes

Remplacer les éléments d'une liste de listes en fonction des index stockés dans une autre liste

Comment fusionner deux éléments dans une liste de listes?

Comment joindre des éléments à l'intérieur d'un tuple, dans une liste de tuples?

Ajouter des éléments de listes à une liste de listes en python

TOP liste

  1. 1

    comment supprimer "compte de connexion google" à des fins de développement - actions sur google

  2. 2

    J'ai besoin de savoir si ces deux phrases sont les mêmes en programmation

  3. 3

    Microsoft.WebApplication.targets

  4. 4

    Création d'un nouvel objet d'une classe avec un nouveau nom en cliquant sur un bouton dans java swing

  5. 5

    La taille de la forme n'est pas égale à la taille de la cellule du tableau et ajuste le texte à l'intérieur de la forme

  6. 6

    Javascript indiquant "impossible de définir la propriété 'innerHTML' sur null"

  7. 7

    Pourquoi utiliser Asyncio ne réduit pas le temps d'exécution global en Python et n'exécute pas les fonctions simultanément?

  8. 8

    Création d'un rappel python pour une fonction C à partir d'une DLL avec un tampon char.

  9. 9

    Trouver l'intersection et l'union de deux rectangles

  10. 10

    Comment convertir une chaîne en tuple en utilisant `reads`?

  11. 11

    Empêcher l'allocation de mémoire dans la génération de combinaison récursive

  12. 12

    Restauration de la sauvegarde de la base de données SQL Server sur la version inférieure

  13. 13

    Nextcloud avec Docker: impossible de créer ou d'écrire dans le répertoire de données

  14. 14

    Compter combien de fois un nombre apparaît dans un tableau aléatoire

  15. 15

    java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver

  16. 16

    java.lang.NoClassDefFoundError: org / springframework / data / repository / config / BootstrapMode

  17. 17

    Créer un graphique à barres avec une fréquence relative / à partir d'un objet de table dans R

  18. 18

    comment le contrôle de tableau javascript devrait-il être

  19. 19

    Importation bizarre de Google Sheets importxml - Impossible d'obtenir le chemin correct vers les éléments

  20. 20

    Injecter des éléments dans une liste existante au printemps

  21. 21

    Placez le modeBar en haut au centre à l'aide de plotly.js

chaudétiquette

Archive