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()