Delete a file if it exists. If it doesn't, create it
标题说明一切。
我的代码:
1 2 3 4 5 6 7 8 | try: os.remove("NumPyResults.txt") except IOError: with open("NumPyResults.txt", 'a') as results_file: outfile = csv.writer(results_file) outfile.writerow(.......) |
之所以在append中是因为它在一个函数中并且被多次调用。因此,每次运行程序时,我都需要一个新文件,方法是删除旧文件并写入新文件。
但是,这不会创建新文件。我还在运行的目录中创建了该文件,它也不会删除该文件。
我得到
1 | WindowsError: [Error 2] The system cannot find the file specified: 'NumPyResults.txt' |
对于缺少的文件名,我得到的异常是"oserror",而不是"ioerror"。如果你得到了异常,你只想通过,文件写入应该在try块之外。
1 2 3 4 5 6 7 8 | try: os.remove("NumPyResults.txt") except OSError: pass with open("NumPyResults.txt", 'a') as results_file: results_file.write('hi ') |