Maison  >  Article  >  développement back-end  >  Comment créer un dictionnaire unique à partir d'un fichier CSV en Python ?

Comment créer un dictionnaire unique à partir d'un fichier CSV en Python ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-25 18:30:15456parcourir

How to Create a Single Dictionary from a CSV File in Python?

Création d'un dictionnaire unique à partir d'un fichier CSV

Dans cet effort de programmation, vous visez à construire un dictionnaire singulier à partir d'un fichier CSV, dans lequel la première colonne sert d'unique clés et la deuxième colonne incarne leurs valeurs correspondantes.

Le barrage routier : dévoiler le ValueError

Votre approche initiale utilisant csv.DictReader et csv.DictWriter conduit à une ValueError déroutante : "trop ​​de valeurs à décompresser (attendu 2)." Le nœud de ce problème réside dans la boucle au sein de votre code, où vous tentez de créer des dictionnaires distincts pour chaque ligne du fichier CSV.

Le chemin vers la résolution : un refuge singulier pour les données

Pour créer un dictionnaire unique encapsulant les paires clé-valeur du fichier CSV, vous pouvez tirer parti de la charmante fonctionnalité de compréhension de liste de Python. L'extrait de code corrigé ci-dessous adopte cette approche :

import csv

with open('coors.csv', mode='r') as infile:
    reader = csv.reader(infile)
    mydict = {rows[0]: rows[1] for rows in reader}

Alternativement, pour les versions Python antérieures à 2.7.1, vous pouvez opter pour la syntaxe suivante :

mydict = dict((rows[0],rows[1]) for rows in reader)

Avec ces modifications dans place, votre code construira gracieusement un dictionnaire solitaire, englobant les clés uniques et les valeurs qui les accompagnent à partir du fichier CSV. Bon codage et harmonie des données !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn