<p>我正在尝试创建一个存档,以存储系统中可用书籍的列表。我希望我的程序要求用户输入csv文件,从该文件中读取书籍列表,检查出版年份,如果该书超过7年,则删除该行。
我想把所有的东西都放在一个文件里。在</p>
<p>到目前为止,writerow没有删除某些行,而是删除文件中的所有内容。有人能帮我弄明白怎么修吗?在</p>
<pre><code>import csv
import os
import time
archive = os.listdir()
def get_user_files(self):
while True:
for position, file_name in enumerate(archive):
print(position, "-", file_name)
userInput = input("\n\n ")
if (int(userInput) < 0) or (int(userInput) > len(archive)):
print("Invalid Input. Try again. \n")
else:
print("Loading succesful!")
break
global cvs_list
cvs_list = archive[int(userInput)] # Store file
archive.remove(cvs_list) # Remove from the list
with open(cvs_list, 'r') as in_file, open(cvs_list, 'w') as out_file:
reader = csv.reader(in_file)
writer = csv.writer(out_file)
for row in reader:
next(reader) #skip headers
if int(row[2]) < 2011:
writer.writerow(row)
</code></pre>
<p>编辑:</p>
^{pr2}$