[Python] Trois méthodes pour comparer la liste des tableaux à une dimension et la liste des tableaux à deux dimensions et extraire uniquement les valeurs correspondantes [json]

Aperçu

Comme le dit le titre. ** Comment obtenir la valeur de la colonne [nom] de B lorsque la valeur de la liste (A) du tableau unidimensionnel existe dans la colonne [ID] de la liste (B) du tableau bidimensionnel. ** ** Ce qui précède est ce que j'ai appris en jouant avec l'api slack, et je l'ai résumé ci-dessous.

A.list


print(name_list)
['U012JDYRD2T', 'U012X478FNZ']

B.list #Il a été modifié pour le rendre plus facile à voir.


print(data)
[['name',     'id'],
 ['Slackbot', 'USLACKBOT'],
 ['test_1',   'U012JDYRD2T'], #Je veux ici
 ['test_5',   'U012JDYSN07'],
 ['kita',     'U012X478FNZ'],#Je veux ici
 ['test_4',   'U012XQBE63X'],
 ['test_bot', 'U012YTNNPB5'],
 ['test_3',   'U012ZC8AQ8K'],
 ['tese_2',   'U013BQDLK6V']]

Résultats attendus.py


print(result)
['test_1','kita']

Méthode 1

1.py


result = []
for data_id in data:
    if data_id[1] in name_list:
        result.append(data_id[0])

(1) Pour les boucles «[data_id in data]», les données sont stockées dans data_id une par une. ② [if data_id [1] in name_list] est une condition que la colonne [id](data_id [1]) et name_list correspondent. ③ [result.append (data_id [0])] ajoute la colonne [name](data_id [0]) à la liste appelée [result]

Méthode 2

1.py


result = []
result = [data_id[0] for data_id in data if data_id[1] in name_list]

La théorie est la même que la méthode 1. intelligent.

Méthode 3

3.py


r = []
r2 = []
for i in data:
    r = r + i
for i in name_list:
    tmp = (r.index(i)) - 1
    r2.append(r[tmp])

① Stockez les données une par une dans r. Il est stocké sous les noms «['nom', 'id', 'Slackbot', 'USLACKBOT'…] '. (2) Utilisez le fait que le nom et l'identifiant sont stockés dans l'ordre. En d'autres termes, celui avant «" U012X478FNZ "» est «« kita »», et celui avant «« U012JDYRD2T »» est «« test_1 »». ③ Donc, dans [tmp = (r.index (i)) -1], par [-1] à partir de l'indice (numéro) de "U012X478FNZ", l'indice de "kita" immédiatement avant cela est obtenu. ça peut. ④ Et la valeur de l'indice acquis est ajoutée à [r2].

Ce que j'ai trouvé

Vous devez en savoir plus sur les boucles et les conditions.

Recommended Posts

[Python] Trois méthodes pour comparer la liste des tableaux à une dimension et la liste des tableaux à deux dimensions et extraire uniquement les valeurs correspondantes [json]
J'ai créé une fonction pour voir le mouvement d'un tableau à deux dimensions (Python)
Comparez la vitesse d'ajout et de carte Python
Liste de code Python à déplacer et à mémoriser
Extraire des images et des tableaux de pdf avec python pour réduire la charge de reporting
J'ai essayé de comparer la vitesse de traitement avec dplyr de R et pandas de Python
[Python] Comment supprimer les valeurs en double de la liste
[Python] Comment afficher les valeurs de liste dans l'ordre
[Python] Types de valeurs statistiques (caractéristiques) et méthodes de calcul
Python: créer un dictionnaire à partir d'une liste de clés et de valeurs
Je veux connaître la nature de Python et pip
Extraire la valeur la plus proche d'une valeur à partir d'un élément de liste en Python
Python démarré: échangez le tableau de valeurs obtenu dans le résultat SQL vers le type de liste et utilisez-le dans IN d'une autre requête
Extraire l'index de la set list d'origine correspondant à la liste des sous-ensembles.
[Python] Afficher uniquement les éléments de la liste côte à côte [Vertical, horizontal]
[Python] Comment obtenir le premier et le dernier jour du mois
[python] Obtenez le rang des valeurs dans la liste par ordre croissant / décroissant
Convertissez le résultat de python optparse en dict et utilisez-le
[Python] Un programme qui fait pivoter le contenu de la liste vers la gauche
Exemple de création de validation par lots (plusieurs méthodes à traiter lors du découpage d'un tableau) et exemple d'écriture par lots dans Firestore
Python> Extraire la valeur de list (unpack)> Add *> Vous m'avez appris la différence entre Python 2 et Python 3 concernant print (* mylist) / print ().
L'histoire de Python et l'histoire de NaN
[Python] Comment permuter les valeurs de tableau
Journalisation Python et vidage vers json
Comparez les boucles de tableau Python et JavaScript
À propos de la liste de base des bases de Python
[Python] Comment spécifier la position d'affichage de la fenêtre et la taille de matplotlib
Python> sys.path> Liste de chaînes indiquant le chemin pour rechercher des modules
[Introduction à Python] Comment trier efficacement le contenu d'une liste avec le tri par liste
J'ai mesuré 6 méthodes pour obtenir l'indice de la valeur maximale (valeur minimale) de la liste
[Mémo Python] Soyez prudent lors de la création d'un tableau à deux dimensions (liste de listes)
Extraire tous les n éléments d'un tableau (liste) en Python et Ruby
[Python] Comment utiliser la fonction enumerate (extraire le numéro d'index et l'élément)
J'ai essayé d'extraire et d'illustrer l'étape de l'histoire à l'aide de COTOHA
J'ai essayé de vérifier et d'analyser l'accélération de Python par Cython
J'ai mesuré la vitesse de la notation d'inclusion de liste, pendant et pendant avec python2.7.
[Python] Précautions lors de la recherche des valeurs maximum et minimum avec un tableau numpy avec un petit nombre d'éléments
Python> set> Convertir avec set ()> dictionary n'est que la clé> On m'a appris à convertir les valeurs du dictionnaire en set / dir ({}) / help ({}) / help ({} .valeurs)