谈一谈.pyd文件

        最近在使用SAPA的上采样代码的时候,作者整了一个setup的一个操作,最开始的时候没太注意,原来是运行了setup文件之后可以生成对应的.pyd文件。其生成的结果如下:

         但是很疑惑pyd文件是干啥的,所以上网搜了一下学习了一下,原来.pyd文件是加密的文件。

看不懂这个文件的文件名是什么意思,搜了一下原来是cp39-win_arm64是一个有关与设备的文件名,这个是要对应删除的,将其文件名修改为av_ext.pyd。

         这个加密文件使用起来还是很方便的,和使用.py文件是一样的,可以用import XXX或者from XXX import xxx。

        原则上来说这样之后就可以直接使用.pyd文件里面的对应的模块了,但作为万年倒霉蛋的我来说,遇到别的问题才是正常,我运行代码给我报错:  

ImportError: DLL load failed while import av_ext。

错误说明是在导入av_ext包的时候加载dll文件错误,好好好又给我搞事情,根据网上教程说下一个depends就可以查看pyd文件对应的依赖了,于是我下了一个,然后对应看了一下缺少的库。(网上说将缺少的dll文件和pyd文件放到同一个文件夹下就可以了。)

所以我将一些缺失的库放到对应的文件夹下重新尝试了,但是依旧还是出现问题,不懂是不是我什么设置不对。之后我研究了一下我缺少的库好像都是torch里面的,于是我换了一个正确的torch库的环境就可以正常运行了。

总结一下,pyd文件是加密文件,以后自己工作了也可以通过这样的方式来保护自己的知识。