Python: Как прочитать пару ключ-значение из файла CSV? - PullRequest
0 голосов
/ 28 февраля 2020

У меня есть CSV-файл с 3 столбцами, и я хочу прочитать 1-й и 3-й столбцы как пару ключ-значение. Я делаю это, как показано ниже, но это не работает.

with open(dirName + fileName) as f:
       for line in f:
            (key, value) = line.split(',')

Ответы [ 3 ]

2 голосов
/ 28 февраля 2020

Я думаю, вы хотите что-то вроде:

with open(dirName + fileName) as f:
       for line in f:
            fields = line.split(',')
            assert len(fields) == 3
            (key, _, value) = fields

Но, возможно, взгляните на модуль CSV.

0 голосов
/ 28 февраля 2020

Попробуйте это

with open(file,'r+') as text:
 for line in text.readlines():
     (key, value) = line.split(',')
0 голосов
/ 28 февраля 2020

Каждый раз, когда вы работаете с CSV-файлами, используйте модуль csv .
Как @ Buckeye14Guy говорит: вам также следует использовать pathlib для манипулирования путями.
И, для быстрого поиска, вы можете хранить пары ключ-значение в словаре, d.

import csv, pathlib

d = {}
your_path = pathlib.PurePath(dirName).joinpath(filename)
with open(your_path,'r') as f:  
    reader = csv.reader(f) 
    for line in reader: 
        d[line[0]] = line[2] # dict entry with key = 1st col and value = 3rd col
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...