python分行写入文件并输出_将Python程序的输出写入.txt文件

本文讨论了如何将一个Python程序(CSVParserMultiple.py)的输出,即从CSV文件读取的数据,作为INSERT语句写入单独的.txt文件。问题在于原本的实现只将第一行写入文件。解决方案包括将读取和写入操作整合到一个程序中,使用with语句同时打开CSV和输出文件,并将print语句替换为直接写入文件的操作。此外,还讨论了如何重定向标准输出到文件以及如何组织代码结构以提高可复用性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我编写了一个程序来读取CSV文件并将内容作为插入语句输出。 然后我编写了一个执行程序,它应该获取CSV解析器程序的输出并将其写入.txt文件,但不是写入整个输出,而是只编写第一个语句。

这是执行者的代码:

import sys

with open('insert.txt', 'wb') as f:

subprocess.check_call(["python","CSVParserMultiple.py"], stdout=f)

以及解析器的代码:

import csv, os

path = 'C:/Users/user/Desktop/test/'

for file in os.listdir(path):

if file.endswith('.csv'):

# print ('Parsing file: ' + os.path.basename(path + file))

openFile = open(path + file)

csvFile = csv.reader(openFile)

getHeader = next(csvFile)

columnHeaders = map((lambda x:"'" + x +"'"), getHeader[:-1])

insert = 'INSERT INTO testing (' +"'ID', 'VehicleID'," + ', '.join(columnHeaders) + ') VALUES '

for row in csvFile:

values = map((lambda x:"'" + x.strip() +"'"), row[:-1])

print (insert +"(" +",".join(values) +");")

openFile.close()

我不完全确定将它们作为两个独立的程序是有意义的,但我不能让它们在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值