Hướng dẫn read csv into dictionary python - đọc csv vào từ điển python

Đối với các tệp CSV đơn giản, chẳng hạn như các tệp sau

id,col1,col2,col3
row1,r1c1,r1c2,r1c3
row2,r2c1,r2c2,r2c3
row3,r3c1,r3c2,r3c3
row4,r4c1,r4c2,r4c3

Bạn có thể chuyển đổi nó thành từ điển Python chỉ bằng cách sử dụng các bản dựng

with open[csv_file] as f:
    csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]

[_, *header], *data = csv_list
csv_dict = {}
for row in data:
    key, *values = row   
    csv_dict[key] = {key: value for key, value in zip[header, values]}

Điều này sẽ mang lại từ điển sau

{'row1': {'col1': 'r1c1', 'col2': 'r1c2', 'col3': 'r1c3'},
 'row2': {'col1': 'r2c1', 'col2': 'r2c2', 'col3': 'r2c3'},
 'row3': {'col1': 'r3c1', 'col2': 'r3c2', 'col3': 'r3c3'},
 'row4': {'col1': 'r4c1', 'col2': 'r4c2', 'col3': 'r4c3'}}

Lưu ý: Từ điển Python có các khóa duy nhất, vì vậy nếu tệp CSV của bạn đã trùng lặp ids, bạn nên nối mỗi hàng vào một danh sách.

for row in data:
    key, *values = row

    if key not in csv_dict:
            csv_dict[key] = []

    csv_dict[key].append[{key: value for key, value in zip[header, values]}]

import csv

with open[csv_file] as f:
    csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]

[_, *header], *data = csv_list
csv_dict = {}
for row in data:
    key, *values = row   
    csv_dict[key] = {key: value for key, value in zip[header, values]}
5
with open[csv_file] as f:
    csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]

[_, *header], *data = csv_list
csv_dict = {}
for row in data:
    key, *values = row   
    csv_dict[key] = {key: value for key, value in zip[header, values]}
6
with open[csv_file] as f:
    csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]

[_, *header], *data = csv_list
csv_dict = {}
for row in data:
    key, *values = row   
    csv_dict[key] = {key: value for key, value in zip[header, values]}
7
with open[csv_file] as f:
    csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]

[_, *header], *data = csv_list
csv_dict = {}
for row in data:
    key, *values = row   
    csv_dict[key] = {key: value for key, value in zip[header, values]}
8
with open[csv_file] as f:
    csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]

[_, *header], *data = csv_list
csv_dict = {}
for row in data:
    key, *values = row   
    csv_dict[key] = {key: value for key, value in zip[header, values]}
9

  • & nbsp; Ví dụ 2: Tải CSV đến Từ điển & NBSP;
  • Các
  • import csv

    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    5
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    6
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    7
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    8
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    9

    & nbsp; Ví dụ 2: Tải CSV đến Từ điển & NBSP; Working with csv files in Python 

    Các is a simple file format used to store tabular data, such as a spreadsheet or database. CSV file stores tabular data [numbers and text] in plain text. Each line of the file is a data record. Each record consists of one or more fields, separated by commas. The use of the comma as a field separator is the source of the name for this file format. CSV raw data is not utilizable in order to use that in our Python program it can be more beneficial if we could read and separate commas and store them in a data structure. We can convert data into lists or dictionaries or a combination of both either by using functions csv.reader and csv.dictreader or manually directly and in this article, we will see it with the help of code. 

    Ví dụ 1: Tải CSV vào Danh sách & NBSP; Loading CSV to list 

    Tệp CSV: & NBSP; 

    Tải dữ liệu CSV vào danh sách và từ điển

    Python3

    import csv

    filename="Geeks.csv"

    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    0
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    1
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    2
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    3
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    4

    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    5
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    6
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    7
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    8
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    9

    {'row1': {'col1': 'r1c1', 'col2': 'r1c2', 'col3': 'r1c3'},
     'row2': {'col1': 'r2c1', 'col2': 'r2c2', 'col3': 'r2c3'},
     'row3': {'col1': 'r3c1', 'col2': 'r3c2', 'col3': 'r3c3'},
     'row4': {'col1': 'r4c1', 'col2': 'r4c2', 'col3': 'r4c3'}}
    
    0
    {'row1': {'col1': 'r1c1', 'col2': 'r1c2', 'col3': 'r1c3'},
     'row2': {'col1': 'r2c1', 'col2': 'r2c2', 'col3': 'r2c3'},
     'row3': {'col1': 'r3c1', 'col2': 'r3c2', 'col3': 'r3c3'},
     'row4': {'col1': 'r4c1', 'col2': 'r4c2', 'col3': 'r4c3'}}
    
    1
    {'row1': {'col1': 'r1c1', 'col2': 'r1c2', 'col3': 'r1c3'},
     'row2': {'col1': 'r2c1', 'col2': 'r2c2', 'col3': 'r2c3'},
     'row3': {'col1': 'r3c1', 'col2': 'r3c2', 'col3': 'r3c3'},
     'row4': {'col1': 'r4c1', 'col2': 'r4c2', 'col3': 'r4c3'}}
    
    2

    Output:  

    Tải dữ liệu CSV vào danh sách và từ điển

    import csvExample 2: Loading CSV to dictionary 

    Python3

    import csv

    {'row1': {'col1': 'r1c1', 'col2': 'r1c2', 'col3': 'r1c3'},
     'row2': {'col1': 'r2c1', 'col2': 'r2c2', 'col3': 'r2c3'},
     'row3': {'col1': 'r3c1', 'col2': 'r3c2', 'col3': 'r3c3'},
     'row4': {'col1': 'r4c1', 'col2': 'r4c2', 'col3': 'r4c3'}}
    
    5="Geeks.csv"

    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    5
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    6
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    7
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    8
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    9

    & nbsp; Ví dụ 2: Tải CSV đến Từ điển & NBSP;

    for row in data:
        key, *values = row
    
        if key not in csv_dict:
                csv_dict[key] = []
    
        csv_dict[key].append[{key: value for key, value in zip[header, values]}]
    
    8
    {'row1': {'col1': 'r1c1', 'col2': 'r1c2', 'col3': 'r1c3'},
     'row2': {'col1': 'r2c1', 'col2': 'r2c2', 'col3': 'r2c3'},
     'row3': {'col1': 'r3c1', 'col2': 'r3c2', 'col3': 'r3c3'},
     'row4': {'col1': 'r4c1', 'col2': 'r4c2', 'col3': 'r4c3'}}
    
    1
    {'row1': {'col1': 'r1c1', 'col2': 'r1c2', 'col3': 'r1c3'},
     'row2': {'col1': 'r2c1', 'col2': 'r2c2', 'col3': 'r2c3'},
     'row3': {'col1': 'r3c1', 'col2': 'r3c2', 'col3': 'r3c3'},
     'row4': {'col1': 'r4c1', 'col2': 'r4c2', 'col3': 'r4c3'}}
    
    2

    Output:  

    Tải dữ liệu CSV vào danh sách và từ điển

    import csvLoading CSV into list of Dictionaries

    Python3

    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    5
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    6
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    7
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    8
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    9

    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    0
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    1ids7ids8ids9
    with open[csv_file] as f:
        csv_list = [[val.strip[] for val in r.split[","]] for r in f.readlines[]]
    
    [_, *header], *data = csv_list
    csv_dict = {}
    for row in data:
        key, *values = row   
        csv_dict[key] = {key: value for key, value in zip[header, values]}
    
    3import1

    & nbsp; Ví dụ 2: Tải CSV đến Từ điển & NBSP;

    Các

    import2

    {'row1': {'col1': 'r1c1', 'col2': 'r1c2', 'col3': 'r1c3'},
     'row2': {'col1': 'r2c1', 'col2': 'r2c2', 'col3': 'r2c3'},
     'row3': {'col1': 'r3c1', 'col2': 'r3c2', 'col3': 'r3c3'},
     'row4': {'col1': 'r4c1', 'col2': 'r4c2', 'col3': 'r4c3'}}
    
    1csv3

    Output:

    Tải dữ liệu CSV vào danh sách và từ điển


    Bài Viết Liên Quan

    Chủ Đề