나는 csv 파일에서 만든 사전을 가지고 있으며이 dict를 사용하여 sheet2.csv라는 다른 csv 파일의 특정 열에있는 값을 업데이트하려고합니다.사전에서 특정 열에 기존 csv 파일에 어떻게 쓸 수 있습니까?
Sheet2.csv에는 여러 헤더가있는 많은 열이 있으며 내 사전의 키 값 쌍을 기준으로 PartNumber 열만 업데이트하면됩니다.
제 질문은 어떻게하면 dict에있는 키를 사용하여 sheet2.csv를 검색하고 PartNumber 열만 적절한 값으로 업데이트/쓰기 할 수 있습니까?
나는 이것이 너무 혼란스럽지 않고 도움이 되었기를 바랍니다. 나는 또한 시트 2에서 기존 행이 변경되지 않은 상태로 유지 있는지 확인해야합니다,
import csv
a = open('sheet1.csv', 'rU')
csvReader = csv.DictReader(a)
dict = {}
for line in csvReader:
dict[line["ReferenceID"]] = line["PartNumber"]
print(dict)
dict = {'R150': 'PN000123', 'R331': 'PN000873', 'C774': 'PN000064', 'L7896': 'PN000447', 'R0640': 'PN000878', 'R454': 'PN000333'}
이 일을 더욱 복잡하게하려면 :
이
내가 DICT를 만드는 데 사용되는 코드입니다. 예를 들어 ReferenceID가 R1234이고 PartNumber가 PN000000 인 행이있는 경우 변경되지 않습니다. 그래서 나는 내 사전에없는 행을 건너 뛸 필요가있다. 샘플 CSV를에링크 :
편집 : 내 질문을 바꿔 더 나은 예를 들어 csvfile를 제공하겠습니다.
의가 나는 DICT = { 'R150'을 가지고 있다고 가정 해 봅시다 : 'PN000123', 'R331': 'PN000873', 'C774': 'PN000064', 'L7896': 'PN000447를', 'R0640': 'PN000878 ','R454 ':'PN000333 '}.
는 I이 CSV 파일을 작성해야 https://www.dropbox.com/s/c95mlitjrvyppef/sheet.csv
구체적으로, I는 I 만든 딕셔너리의 키를 사용 PARTNUMBER 열을 작성해야한다. 그래서 열 ReferenceID를 반복하고 그 값을 dict의 키와 비교해야합니다. 일치하는 항목이 있으면 해당 값으로 해당 PartNumber 셀을 채워야합니다 ....이 모든 것이 혼란 스럽다면 미안합니다!
당신은 샘플 sheet1.csv sheet2.csv –
물론, https://www.dropbox.com/s/t4sf2wc8reqwz0e/Sheet1.xlsx 및 https://www.dropbox.com에 대한 링크를 제공 할 수 있습니다 /s/8hdd4ovnywzi3u3/Sheet2.xlsx. – scott0880
Better, https://www.dropbox.com/s/zkagunnm0xgroy5/Sheet1.csv 및 https://www.dropbox.com/s/amb7vr48mdc94v6/Sheet2.csv – scott0880