запись словаря по названию столбца

Есть файл csv, в котором есть название столбцоввведите сюда описание изображения

И есть словарь с данными, данные могут меняться, как можно сопоставить ключ с названием столбца и записать в него значение ключа?

dict = {'Russian Federation': '991', 'Ukraine': '127', 'Belarus': '13',....}

Ответы (1 шт):

Автор решения: Zhihar

как я понимаю вам необходимо вот это:

data = {'Russian Federation': '991', 'Ukraine': '127', 'Belarus': '13',}

keys = ';'.join(data.keys())
values = ';'.join(data.values())

with open('d:\\data.csv', 'a') as file:
    file.write(f"{keys}\n")
    file.write(f"{values}\n")
  1. выделяем ключи, значения
  2. формируем из них строки через разделитель ';' (для csv файла)
  3. пишем данные в файл

Для ситуации, когда надо записать данные в соответствии с уже записанными ключами можно использовать такой код:

data = {'Russian Federation': '991', 'Ukraine': '127', 'Belarus': '13',}

# считать ключи
with open('d:\\data.csv', 'r') as file:
    keys = file.readline()[:-1].split(';')

# сформировать строку в соответствии с ключами
values = ';'.join([data[key] for key in keys])

# записать значения
with open('d:\\data.csv', 'a+') as file:
    file.write(f"{values}\n")
→ Ссылка