【py文件加密】将 .py 文件编译成 .pyd 文件(支持批量处理)

文章目录

  • 一、什么是 .pyd 文件? —— .py + .pyc + .pyd
  • 二、基本原理
    • 2.1、编译过程
    • 2.2、函数详解
      • 2.2.1、Extension() —— 用于定义扩展模块(C/C++ 扩展)的类
      • 2.2.2、setup() —— 用于配置和构建包的函数
  • 三、环境配置
  • 四、项目实战
    • 4.1、【手动编译】
      • (1)构建与编译
        • 第一步:构建脚本,生成 setup.py 文件 —— 手动指定文件路径(单个/多个)
        • 第二步:编译命令,生成 .pyd 文件:python setup.py build_ext --inplace
      • (2)文件调用(.pyd)
        • 注意:编译命令必须在 py 文件所需环境下打包
        • 注意:error: Microsoft Visual C++ 14.0 or greater is required.
    • 4.2、【自动编译】 —— 支持批量处理
      • (1)使用说明(只需要指定工作路径)
      • (2)将 .py 文件编译成 .pyd 文件
  • 五、异常提示
    • 5.1、Python解释器:-m 选项不支持指定模块路径[-m ./path/模块名]。
    • 5.2、Python解释器:conda activate命令将在新的子进程中执行,且不影响后续代码。
    • 5.3、Python解释器:只支持Python脚本文件(.py文件),不支持编译后的Python扩展模块(.pyd)。
    • 5.4、Numba装饰器:只支持Python脚本文件(.py文件),不支持编译后的Python扩展模块(.pyd)。
    • 5.5、信号与槽(类方法):TypeError: return() takes exactly 1 positional argument (2 given)

在密码学中

  • 明文(Plaintext):是指传送方想要接收方获得的可读信息。 明文经过加密所产生的信息被称为密文,而密文经过解密还原得来的信息被称为明文。
  • 密文(ciphertext或cyphertext):是明文经过加密算法所产生的。因为密文是一种除非使用恰当的算法进行解密,人类或计算机不可以直接阅读理解的明文的形态,所以可以被理解为加密的信息。解密与加密是相对的,即一种使密文转化为明文的过程。

一、什么是 .pyd 文件? —— .py + .pyc + .pyd

Python文件类型对比:

  • .py:易读(明文)
  • .pyc:不易读但易被反编译
  • .pyd:不易读且不易被反编译(密文)

你可能感兴趣的:(深度学习,Python项目实战,Python进阶,python,py,pyc,pyd)