txt转csv文件避免部分空值没有转化的问题

txt_file = ''
csv_file =''

csvFile = open(csv_file, 'w', newline='', encoding='utf-8')
writer = csv.writer(csvFile)
csvRow = []

f = open(txt_file, 'r', encoding='utf-8')
for line in f:
    csvRow = line.split()
    writer.writerow(csvRow)
f.close()
csvFile.close()

如上述代码所示,虽然可以将txt文件转化为csv文件格式,但是如果txt文件中有空值,那么在生成的CSV文件中会出现错误(在txt转csv时,不会识别出空值的格式,除非你的空值是0或null)。如果你的空值是是空格或者tab的形式出现,就很容易导致错误。可以尝试如下方法

txt_file = ''
csv_file =''

with open(txt_file, 'r', encoding='utf-8') as f:
    reader = csv.reader(f, delimiter='\t')
    with open(csv_file, 'w', newline='', encoding='utf-8') as csvFile:
        writer = csv.writer(csvFile)
        for row in reader:
            writer.writerow(row)

上述代码首先使用csv.reader()方法读取txt文件,将其分割为单独的行和列。由于原始文件中每个字段间使用了制表符作为分隔符,因此指定delimiter参数为’\t’。然后使用csv.writer()方法写入到csv文件中。这样做能够避免部分空值没有转化的问题,同时也更加简洁易懂。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

火眼猊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值