Я очень новичок в этом программировании на питоне. У меня два файла csv. Я должен просто объединить их, используя общее имя столбца. Я пробовал это, глядя на несколько других сообщений. Но не смог получить этот код, запущенный в моей версии python версии 2.5. Так может ли кто-нибудь помочь мне в этом. Файлы могут выглядеть этот результат файлаКак слить два файла csv с общим столбцом в python версии 2.5
File1
split_name, vcc, temp, c
A, 1,2,1
B,2,3,5
File 2
split_name, cout, i, vout
A, 2.5,2, 1
B, 2.4,1,8
должно быть что-то вроде этого
split_name,vcc,temp,c,cout,i,vout
A, 1, 2, 1, 2.5,2,1
B, 2, 3, 5, 2.4,1,8
код, который я пытался это:
import csv
import array
import os
#def readfile2(file2name):
r = csv.reader(open('file1.csv','r'))
dict2 = {row[0]: row[1:] for row in r}
print str(dict2)
#print dict2.keys()
#def readfile1(file1name):
reader1 = csv.reader(open('file2.csv','r'))
for row in reader1:
dict1 = {row[0]: row[1:]}
#print str(dict1)
#print dict1.values()
print str(dict1)
keys = set(dict1.keys() + dict2.keys())
with open('output.csv', 'wb') as f:
w = csv.writer(f, delimiter=',')
w.writerows([[key, dict1.get(key, "''"), dict2.get(key, "''")] for key in keys])
Но ошибка, что я столкнулся is:
keys = set ((dict1.keys()) + (dict2.keys())) ТипError: неподдерживаемый тип операндов для +: 'dict_keys' и 'dict_keys'
Примечание: я установил версию python 3.4 сейчас.
Ваша помощь будет принята с благодарностью!
Укажите код, который вы имеете до сих пор, и сказать нам, что именно происходит не так. Это прояснит ситуацию для людей, отвечающих на ваш вопрос. – Olga
@Olga Я редактировал вопрос с кодом, который я пытался. Может ли помочь мне с этим? – rami92