繁体   English   中英

使用Regex第一列在Python中读取和解析CSV文件

[英]Reading and parsing a CSV file in Python with Regex first column

我有一个CSV文件(日历),我希望阅读5列,并使用脚本解析以下条件:

  • 删除标题(已完成)
  • 在第一列中将第一列的格式从01/01/2019更改为20190101

脚本的第一部分用于跳过标题。 第二部分我认为正则表达式是必需的,但我只是不知道如何首先删除/然后将0101从2019年之前移动到2019年之后,结果是20190101

如果有人可以提供帮助那就太棒了!

def parse_calendar(infile, outfile):
    with open(outfile, 'w', newline='') as output:
        with open(infile, newline='') as input:
            reader = csv.reader(input, delimiter=',', quotechar='"')
            next(reader, None)  # skip the headers
            writer = csv.writer(output, delimiter=',', quotechar='"')
            for row in reader:   # process each row
                writer.writerow(row)

我希望输出与初始文件相比如下:

01/01/2019新年元旦美国

20190101元旦NC美国

谢谢大家的回复。

所以使用这段代码我得到以下输出:

import csv

def parse_calendar(infile, outfile):
    with open(outfile, 'w', newline='') as output:
        with open(infile, newline='') as input:
            reader = csv.reader(input, delimiter=',', quotechar='"')
            next(reader, None)  # skip the headers
            writer = csv.writer(output, delimiter=',', quotechar='"')
            for row in reader: # process each row
                replaced = row[0].replace('/','')  
                row[0] = replaced
                writer.writerow(row)

01012018,元旦,N,C,US

01012018,元旦,N,C,CA

01152018,Martin L. King Day,N,C,US

我需要添加到脚本中的代码是什么,从01012018到20180101格式不同,因为类型是字符串? 对于每一行然后偏离航线。

感谢它很多

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM