windows 不允许我替换文件
windows not allowing me to replace file
我正在使用 python 遍历 csv 文件,然后删除一些行。为此,我正在创建一个新文件,然后在将新文件重命名为旧文件名之前尝试删除旧文件。我不断收到错误消息,我不清楚原因。错误如下:
Traceback (most recent call last):
File "sendemails.py", line 85, in <module>
os.remove('C:\Python27\emails.csv')
WindowsError: [Error 32] The process cannot access the file because it is being used by another process: 'C:\Python27\emails.csv'
相关代码如下:
FIRST_ROW_NUM = 1
ROWS_TO_DELETE = {1,3}
with open('C:\Python27\emails.csv', 'rt') as infile, open('C:\Python27\emailed.csv', 'wt') as outfile:
outfile.writelines(row for row_num, row in enumerate(infile, FIRST_ROW_NUM)
if row_num not in ROWS_TO_DELETE)
os.remove('C:\Python27\emails.csv')
os.rename('C:\Python27\emailed.csv','C:\Python27\emails.csv')
csv 文件在我知道的任何地方都没有打开,我打印了 infile 和 outfile(以查看是否关闭)并且在删除或重命名之前都关闭了。有什么帮助吗?我完全迷路了。
有时在某些 Microsoft Windows 系统中,如果您使用其他程序(例如记事本)打开文件,则无法删除该文件,因为该程序正在使用它。
我正在使用 python 遍历 csv 文件,然后删除一些行。为此,我正在创建一个新文件,然后在将新文件重命名为旧文件名之前尝试删除旧文件。我不断收到错误消息,我不清楚原因。错误如下:
Traceback (most recent call last):
File "sendemails.py", line 85, in <module>
os.remove('C:\Python27\emails.csv')
WindowsError: [Error 32] The process cannot access the file because it is being used by another process: 'C:\Python27\emails.csv'
相关代码如下:
FIRST_ROW_NUM = 1
ROWS_TO_DELETE = {1,3}
with open('C:\Python27\emails.csv', 'rt') as infile, open('C:\Python27\emailed.csv', 'wt') as outfile:
outfile.writelines(row for row_num, row in enumerate(infile, FIRST_ROW_NUM)
if row_num not in ROWS_TO_DELETE)
os.remove('C:\Python27\emails.csv')
os.rename('C:\Python27\emailed.csv','C:\Python27\emails.csv')
csv 文件在我知道的任何地方都没有打开,我打印了 infile 和 outfile(以查看是否关闭)并且在删除或重命名之前都关闭了。有什么帮助吗?我完全迷路了。
有时在某些 Microsoft Windows 系统中,如果您使用其他程序(例如记事本)打开文件,则无法删除该文件,因为该程序正在使用它。