前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用Cython保护Python源代码

使用Cython保护Python源代码

作者头像
py3study
发布2020-01-13 01:21:14
2.1K0
发布2020-01-13 01:21:14
举报
文章被收录于专栏:python3python3

使用Cython保护Python源代码

**保护您的Python源不受不必要的影响,说起来容易做起来难,因为.pyc字节码是可反编译的,并且混淆很容易被反向工程。我花了一段时间才弄清楚隐藏Python代码的正确方法...... Cython是一个优化的静态编译器,可以将.py模块转换为高性能的C文件,生成的C文件可以毫不费力地编译到本机二进制库中。编译完成后,无法将编译库转换回可读的Python源代码!

1. 安装 Cython

代码语言:javascript
复制
pip install cython

2. 添加 hello.pyx

假设在hello.pyx文件中的一个简单的“hello world”脚本:

代码语言:javascript
复制
def say_hello_to(name):
    print("Hello %s!" % name)

注意文件后缀是pyx

3. 添加相应的setup.py脚本

代码语言:javascript
复制
from distutils.core import setup
from Cython.Build import cythonize

setup(name='Hello world app',
      ext_modules=cythonize("hello.pyx"))

4. 编译

根据您使用的Python版本,运行:

代码语言:javascript
复制
python setup.py build_ext --inplace

成功构建后,您可以删除.c和.py文件,并仅保留.so文件

5.测试

代码语言:javascript
复制
#!/usr/bin/env python
from hello import say_hello_to

say_hello_to('mstools')
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-08-26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 使用Cython保护Python源代码
    • 1. 安装 Cython
      • 2. 添加 hello.pyx
        • 3. 添加相应的setup.py脚本
          • 4. 编译
            • 5.测试
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档