"If a worker wants to do his job well, he must first sharpen his tools." - Confucius, "The Analects of Confucius. Lu Linggong"
Front page > Programming > How to Create a Single Dictionary from a CSV File in Python?

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

Published on 2024-11-22
Browse:846

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

Creating a Single Dictionary from a CSV File

In this programming endeavor, you aim to construct a singular dictionary from a CSV file, wherein the first column serves as unique keys and the second column embodies their corresponding values.

The Roadblock: Unveiling the ValueError

Your initial approach using csv.DictReader and csv.DictWriter leads to a perplexing ValueError: "too many values to unpack (expected 2)." The crux of this issue lies in the loop within your code, where you attempt to create separate dictionaries for each row in the CSV file.

The Path to Resolution: A Singular Haven for Data

To forge a single dictionary that encapsulates the key-value pairs from the CSV file, you can leverage Python's delightful list comprehension feature. The corrected code snippet below embraces this approach:

import csv

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

Alternatively, for Python versions earlier than 2.7.1, you can opt for the following syntax:

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

With these modifications in place, your code will gracefully construct a solitary dictionary, embracing the unique keys and their accompanying values from the CSV file. Happy coding and data harmony!

Latest tutorial More>

Disclaimer: All resources provided are partly from the Internet. If there is any infringement of your copyright or other rights and interests, please explain the detailed reasons and provide proof of copyright or rights and interests and then send it to the email: [email protected] We will handle it for you as soon as possible.

Copyright© 2022 湘ICP备2022001581号-3