File "D:\Python\lib\tkinter\__init__.py", line 1921, in __call__ return self.func(*args) File "C:\Users\ahjsjmk\Desktop\pypcap\main.py", line 132, in ope os.remove(file_path) PermissionError: [WinError 32] 另一个程序正在使用此文件,进程无法访问。: 'C:\\Users\\ahjsjmk\\Desktop\\pypcap\\result.csv
时间: 2023-07-17 15:04:26 浏览: 220
code09_tkinter_login.pyw_python_tkinter_notepad.pyw_
这个错误是由于在尝试删除文件时,另一个程序正在使用该文件导致的。可能是因为你在删除文件之前没有关闭它。
你可以尝试在删除文件之前关闭打开的文件,然后再进行删除操作。以下是修改后的代码示例:
```python
import csv
import os
def read_csv_to_list(file_name):
data = []
file_path = os.path.join(os.path.dirname(__file__), file_name)
with open(file_path, 'r') as file:
csv_reader = csv.reader(file)
for row in csv_reader:
data.append(row)
return data
def delete_file(file_name):
file_path = os.path.join(os.path.dirname(__file__), file_name)
if os.path.exists(file_path):
with open(file_path, 'r') as file:
# 执行文件操作,比如读取内容等
# 关闭文件
file.close()
# 删除文件
os.remove(file_path)
print(f"文件 {file_name} 已成功删除!")
else:
print(f"文件 {file_name} 不存在!")
# 指定你的 CSV 文件名
csv_file_name = 'your_csv_file.csv'
# 调用函数将 CSV 文件读取到列表中
csv_data = read_csv_to_list(csv_file_name)
# 打印读取到的列表数据
for row in csv_data:
print(row)
# 调用函数删除文件
delete_file(csv_file_name)
```
在这个示例中,我添加了一个名为 `delete_file` 的新函数,用于删除文件。在删除文件之前,我们先打开并操作文件(比如读取文件内容等),然后再关闭文件。最后,我们使用 `os.remove` 函数删除文件。
确保将 `csv_file_name` 替换为你实际的 CSV 文件名,并在需要的地方调用 `delete_file` 函数以删除文件。
这样可以确保在删除文件前先关闭它,避免出现 "另一个程序正在使用此文件" 的错误。
阅读全文