Python/Shell脚本合并一个CSV文件的两行,其中Address列有'newline'ch

2024-09-28 01:25:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个CSV文件,它包含两列。例如:

FName,LName,Address1,City,Country,Phone,Email
Matt,Shew,"503, Avenue Park",Auckland,NZ,19809224478,matt@xxx.com
Patt,Smith,"503, Baker Street
Mickey Park
Suite 510",Austraila,AZ,19807824478,patt@xxx.com
Doug,Stew,"12, Main St. 
21st Lane 
Suit 290",Chicago,US,19809224478,doug@xxx.com
Henry,Mark,"88, Washington Park",NY,US,19809224478,matt@xxx.com

在excel中,它看起来像这样:Sample Image

通常人类倾向于以特定的方式输入/复制粘贴地址,通常有时人们会复制签名并将其粘贴到地址列,从而造成这种情况。你知道吗

我尝试过使用Python CSV模块来阅读这个,但是Python似乎没有区分字段值和行尾之间的换行符'\n'。 我的代码:

import csv
with open(file_path, 'r') as f_obj:
    input_data = []
    reader = csv.DictReader(f_obj)
    for row in reader:
        print row

输出如下所示:

{'City': 'Auckland', 'Address1': '503, Avenue Park', 'LName': 'Shew', 'Phone': '19809224478', 'FName': 'Matt', 'Country': 'NZ', 'Email': 'matt@xxx.com'}
{'City': 'Austraila', 'Address1': '503, Baker Street\nMickey Park\nSuite 510', 'LName': 'Smith', 'Phone': '19807824478', 'FName': 'Patt', 'Country': 'AZ', 'Email': 'patt@xxx.com'}
{'City': 'Chicago', 'Address1': '12, Main St. \n21st Lane \nSuit 290', 'LName': 'Stew', 'Phone': '19809224478', 'FName': 'Doug', 'Country': 'US', 'Email': 'doug@xxx.com'}
{'City': 'NY', 'Address1': '88, Washington Park', 'LName': 'Mark', 'Phone': '19809224478', 'FName': 'Henry', 'Country': 'US', 'Email': 'matt@xxx.com'}

我只想将相同的内容写入一个文件,其中aAddress1keys的所有值都不应具有'\n'字符,如下所示:

{'City': 'Auckland', 'Address1': '503, Avenue Park', 'LName': 'Shew', 'Phone': '19809224478', 'FName': 'Matt', 'Country': 'NZ', 'Email': 'matt@xxx.com'}
{'City': 'Austraila', 'Address1': '503, Baker Street Mickey Park Suite 510', 'LName': 'Smith', 'Phone': '19807824478', 'FName': 'Patt', 'Country': 'AZ', 'Email': 'patt@xxx.com'}
{'City': 'Chicago', 'Address1': '12, Main St. 21st Lane Suit 290', 'LName': 'Stew', 'Phone': '19809224478', 'FName': 'Doug', 'Country': 'US', 'Email': 'doug@xxx.com'}
{'City': 'NY', 'Address1': '88, Washington Park', 'LName': 'Mark', 'Phone': '19809224478', 'FName': 'Henry', 'Country': 'US', 'Email': 'matt@xxx.com'}

有什么建议吗???你知道吗

附言: 我有超过10万这样的记录在我的csv文件!!!你知道吗


Tags: 文件comcityparkemailphonemattfname

热门问题