文件1
geographicSiteId,geographicAddressId,streetCode,streetName,streetNr,streetNrSuffix,floor,door,locality,postcode,city,zone,connectionPrice,fiberStatus
7999999,0a3f50b5-d364-32b8-e044-0003ba298018,940,Pedersmindevej,12,,,,Stensby,5485,Skamby,HOUSING,0,ADDRESS_CONNECTED
文件2
id,status,oprettet,ændret,vejkode,vejnavn,adresseringsvejnavn,husnr,etage,dør,supplerendebynavn,postnr,postnrnavn,stormodtagerpostnr,stormodtagerpostnrnavn,kommunekode,kommunenavn,ejerlavkode,ejerlavnavn,matrikelnr,esrejendomsnr,etrs89koordinat_øst,etrs89koordinat_nord,wgs84koordinat_bredde,wgs84koordinat_længde,nøjagtighed,kilde,tekniskstandard,tekstretning,ddkn_m100,ddkn_km1,ddkn_km10,adressepunktændringsdato,adgangsadresseid,adgangsadresse_status,adgangsadresse_oprettet,adgangsadresse_ændret,regionskode,regionsnavn,jordstykke_ejerlavnavn,kvhx,sognekode,sognenavn,politikredskode,politikredsnavn,retskredskode,retskredsnavn,opstillingskredskode,opstillingskredsnavn,zone,jordstykke_ejerlavkode,jordstykke_matrikelnr,jordstykke_esrejendomsnr,kvh,højde,adgangspunktid,vejpunkt_id,vejpunkt_kilde,vejpunkt_nøjagtighed,vejpunkt_tekniskstandard,vejpunkt_x,vejpunkt_y,afstemningsområdenummer,afstemningsområdenavn,brofast,supplerendebynavn_dagi_id,navngivenvej_id,menighedsrådsafstemningsområdenummer,menighedsrådsafstemningsområdenavn,vejpunkt_ændret,ikrafttrædelse,nedlagt,adgangsadresse_ikrafttrædelse,adgangsadresse_nedlagt,adgangsadresse_darstatus,darstatus,storkredsnummer,storkredsnavn,valglandsdelsbogstav,valglandsdelsnavn,landsdelsnuts3,landsdelsnavn,betegnelse
4decd9dc-1f1a-4ac2-ad29-5ce2877bc7e6,1,2019-08-29T14:21:50.823,2019-08-29T14:21:50.823,0306,Haulundvej,Haulundvej,93,,,,6760,Ribe,,,0561,Esbjerg,2007657,"Søndermarken, Ribe Jorder",251f,315673,484889.00977801974,6130238.110476224,55.31829849,8.76188569,A,5,TN,212.83,100m_61302_4848,1km_6130_484,10km_613_48,2023-02-10T11:42:25.912,2cf392a6-8649-4d48-bc8f-652a405da0d4,1,2019-08-29T14:21:50.823,2023-02-10T11:42:25.912,1083,Region Syddanmark,"Søndermarken, Ribe Jorder",05610306__93_______,8886,Ribe Domsogn,1464,Syd- og Sønderjyllands Politi,1151,Retten i Esbjerg,0053,Esbjerg Omegn,Landzone,2007657,251f,315673,05610306__93,2.7,662ea6da-9162-4876-a590-7ba2793c3747,fae767fe-e871-4c15-9fed-6049d7efa4dc,Adressemyn,A,V0,8.76197107,55.31854109,28,Ribe,1,,ae74a1c7-ce69-4ffe-af95-71dcb12eac18,1,Ribe Domsogn,2019-08-29T14:22:28.339685,2019-08-29T14:21:50.823,,2019-08-29T14:21:50.823,,3,3,7,Sydjylland,B,Sjælland-Syddanmark,DK032,Sydjylland,"Haulundvej 93, 6760 Ribe"
我想从文件1的第2列中获取ID,并在文件2中搜索该ID。如果ID存在于文件2中,我想将文件2的第23和24列添加到新文件中。新文件应该与文件1一样,只是添加了新的列(23,24)。
#! /usr/bin/env python3
import csv
file1 = 'whitelist.csv'
file2 = 'adresse.csv'
with open(file1, "r") as a, open(file2, "r") as b:
csv_f1 = csv.reader(a)
csv_f2 = csv.reader(b)
for row in csv_f1:
instnr = row[0]
darid = row[1]
print (instnr, darid)
a.close()
b.close()
我有点困在如何做到这一点?
1条答案
按热度按时间5ssjco0h1#
跟踪二十多个列变得乏味,因为另一个列将不可避免地插入到混合中。
你写的
首选DictReader,这样你就可以通过名称而不是数字来引用列。当然,有一个对应的编写器。
给定一对行,您可以合成一个更大的行:
并将其写入结果.CSV文件。