python 将文件移入回收站

 

python如果要删除一个文件,通常使用

os.remove(filename)

但是这样就直接从磁盘删除了。

有些文件需要删除到回收站,以便误删后还能找回文件

复制代码
from win32com.shell import shell,shellcon
debug=False
def deltorecyclebin(filename):
    print('deltorecyclebin', filename)
    # os.remove(filename) #直接删除文件,不经过回收站
    if not debug:
        res= shell.SHFileOperation((0,shellcon.FO_DELETE,filename,None, shellcon.FOF_SILENT | shellcon.FOF_ALLOWUNDO | shellcon.FOF_NOCONFIRMATION,None,None))  #删除文件到回收站
        if not res[1]:
            os.system('del '+filename)
复制代码

安装模块

pip install pywin32

假如安装后报错,显示import win32file ImportError: DLL load failed

【解决方案】

从定位上看是pywin32这个库出现了问题,用conda list查看pywin32 显示的版本是223

他说要把pywin32降级到224。

pip install pywin32==224
在安装过程中发现,在我的环境中pywin32实际上是227,不是conda list中显示的223。

安装224版本之后,问题解决。
参考了这个博主的解决办法https://www.cnblogs.com/longweiqiang/p/13086491.html

posted @   记录——去繁就简  阅读(437)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示