【发布时间】:2019-08-12 18:15:33
【问题描述】:
所以我在 python 中编写了一个小程序,它允许我获取一个 .csv 文件,过滤掉我需要的行,然后将它们导出到一个新的 .txt 文件中。 这工作得很好,所以我决定通过允许用户通过控制台(命令行)选择应该自己转换的文件来使其更加用户友好。
我的问题:文件被导入为 .csv 文件,但没有导出为 .txt 文件,这导致我的程序覆盖了将被清空的原始文件,因为我的程序中有一个步骤允许我删除第一个两行输出文本。
有人知道解决办法吗?
谢谢:)
import csv
import sys
userinput = raw_input('List:')
saveFile = open(userinput, 'w')
with open(userinput, 'r') as file:
reader = csv.reader(file)
count = 0
for row in reader:
print(row[2])
saveFile.write(row[2] + ' ""\n')
saveFile.close()
saveFile = open(userinput, 'r')
data_list = saveFile.readlines()
saveFile.close()
del data_list[1:2]
saveFile = open(userinput, 'w')
saveFile.writelines(data_list)
saveFile.close()
【问题讨论】:
-
欢迎使用 SO,您可以写入新文件而不是旧文件吗?
标签: python csv input user-input overwrite