前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【转】python打包成so-* -coding: UTF-8 -* -

【转】python打包成so-* -coding: UTF-8 -* -

作者头像
微风、掠过
发布2018-08-02 16:13:40
1.8K0
发布2018-08-02 16:13:40
举报
文章被收录于专栏:机器学习算法与理论

python:让源码更安全之将py编译成so

应用场景

Python是一种面向对象的解释型计算机程序设计语言,具有丰富和强大的库,使用其开发产品快速高效。

python的解释特性是将py编译为独有的二进制编码pyc文件,然后对pyc中的指令进行解释执行,但是pyc的反编译却非常简单,可直接反编译为源码,当需要将产品发布到外部环境的时候,源码的保护尤为重要.

准备工作

环境是可为linux/centos,我Windows10本地是Bash on Ubuntu on Windows,用起来很方便,命令行打bash即进入命令行

思路是先将py转换为c代码,然后编译c为so文件

所以要安装以下内容

python 安装:cython

pip install cython

linux 安装:python-devel,gcc

yum install python-devel

yum install gcc

初步编译

在testing文件夹下有your_file.py文件待编译,内容如下

-* -coding: UTF-8 -* -

author = 'Arvin'

class test: def say(self): print 'hello'   新建setup.py,内容如下

from distutils.core import setup from Cython.Build import cythonize

setup(ext_modules = cythonize(["your_file.py"]))   在bash中执行

cd testing python setup.py build_ext

cd build/lib.linux-x86_64-2.7/ python from your_file import test test().say()

转自:http://www.cnblogs.com/ke10/p/py2so.html

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.07.18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • -* -coding: UTF-8 -* -
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档