python文件修改错误
在python里面同一个文件不可以连续打开两次,想要打开第二次必须先把第一次关掉,不然就会报错
改了一百遍,午后发现是没有关掉文件导致第二次写入失败
def chanangebook(bookname, type, price, content):
'''2
:param bookname:
:param type:
:param price:
:param content:
:return:
'''
f = open(fileName, 'r', newline='', encoding='utf-8') # r代表只读的方式
f1 = open(fileName1, 'w', newline='', encoding='utf-8') # a代表追加方
csv_writer = csv.writer(f1)
for line in f.readlines():
book_array = line.strip("\n").split(",")
if bookname != book_array[0]:
csv_writer.writerow([str(book_array[0]), str(book_array[1]), str(book_array[2]), str(book_array[3]),
str(book_array[4]).strip("\r").strip("['").strip("']")])
if bookname == book_array[0]:
if type != '':
book_array[2] = type
csv_writer.writerow([str(book_array[0]), str(book_array[1]), str(book_array[2]), str(book_array[3]),
str(book_array[4]).strip("\r").strip("['").strip("']")])
if price != '':
book_array[3] = price
csv_writer.writerow([str(book_array[0]), str(book_array[1]), str(book_array[2]), str(book_array[3]),
str(book_array[4]).strip("\r").strip("['").strip("']")])
if content != '':
book_array[4] = content
csv_writer.writerow([str(book_array[0]), str(book_array[1]), str(book_array[2]), str(book_array[3]),
str(book_array[4]).strip("\r").strip("['").strip("']")])
f.close()
f1.close()
file1 = open(fileName1, "r", encoding='utf-8')
file2 = open(fileName, "w", encoding='utf-8')
s = file1.read()
w = file2.write(s)
file1.close()
file2.close()
浙公网安备 33010602011771号