Добавление данных к существующим столбцам в CSV-файле - PullRequest
0 голосов
/ 27 марта 2019

Я беру данные из таблицы (Postgres) и пытаюсь добавить в существующий файл.Требуется вставить данные в соответствующие столбцы

Я знаю только для добавления по строкам, а не к конкретным столбцам

import psycopg2
import csv

conn_str="host='localhost' port='' "

query=''

cur.execute(query)

title=[i[0] for i in cur.description]

result=cur.fetchall()

with open (file,'a') as csvfile:
    if result:
        c=csvwriter(csvfile)
        c.writerow(title)
        c.writerows(result)

Существующий файл CSV:

a,b,c,d,e (columns)
1,2,3
4,5,6

Нет данных в столбцах d и e

Обязательно

a,b,c,d,e 
1,2,3,x,y
4,5,6,p,q

После выполнения сценария следует заполнять только столбцы d и e.В таблице также есть данные, относящиеся к этим полям.

1 Ответ

0 голосов
/ 27 марта 2019

Попробуйте

import csv

with open('current.csv', 'r') as c:
    reader = csv.reader(c)
    extended_rows = []
    for row in reader:
        row.append('Data From DB1')
        row.append('Data From DB2')
        extended_rows.append(row)
    with open('extended.csv', 'w') as e:
        writer = csv.writer(e)
        writer.writerows(extended_rows)

current.csv

A,B,C
D,E,f

extended.csv

A,B,C,Data From DB1,Data From DB2
D,E,f,Data From DB1,Data From DB2
...