shutil.move() function doesn't seem to work properly in the following code and is showing the attached error.
Error: PermissionError: [WinError 32] The process cannot access the file because it is being used by another process
if file.is_file():
# print(file.suffix.lower()
if file.suffix.lower() in extension_paths:
destination_path = destination_dir / extension_paths[file.suffix.lower()]
else:
destination_path = destination_dir / extension_paths['noname']
destination_path = add_date_to_file(destination_path)
destination_path = rename_file(file, destination_path)
shutil.move(str(file), str(destination_path))
I have been trying to debug this code a lot lately. I found that if I use the below code, the code works fine except both the 'try' and 'except' blocks run. Is that possible? If so, how?
try:
if file.suffix.lower() in extension_paths:
destination_path = destination_dir / extension_paths[file.suffix.lower()]
else:
destination_path = destination_dir / extension_paths['noname']
destination_path = add_date_to_file(destination_path)
destination_path = rename_file(file, destination_path)
shutil.move(str(file), str(destination_path))
except (Exception,):
pass
I would be grateful if somebody comes up with the reason of the error. Thanks!