欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python打包成 .so的實(shí)現(xiàn)步驟

 更新時(shí)間:2023年12月24日 11:00:38   作者:哦豁灬  
當(dāng)需要將產(chǎn)品發(fā)布到外部環(huán)境的時(shí)候,源碼的保護(hù)尤為重要,因此需要將python文件打成so文件的目的就是為了保護(hù)源碼,本文主要介紹了python打包成.so的實(shí)現(xiàn)步驟,感興趣的可以了解一下

為什么要將python打包成so文件

Python是一種面向?qū)ο蟮慕忉屝陀?jì)算機(jī)程序設(shè)計(jì)語(yǔ)言,具有豐富和強(qiáng)大的庫(kù),使用其開(kāi)發(fā)產(chǎn)品快速高效。python的解釋特性是將py編譯為獨(dú)有的二進(jìn)制編碼pyc文件,然后對(duì)pyc中的指令進(jìn)行解釋執(zhí)行,但是pyc的反編譯卻非常簡(jiǎn)單,可直接反編譯為源碼,當(dāng)需要將產(chǎn)品發(fā)布到外部環(huán)境的時(shí)候,源碼的保護(hù)尤為重要.因此需要將python文件打成so文件的目的就是為了保護(hù)源碼。

1)生成 .so庫(kù)文件,使用腳本 py2sp.py,編譯目標(biāo) python 文件成 .so

py2so

import Cython.build
import distutils.core

def py2so(file):
    cpy Cython.Build.cythonize(file) # 返回 distuls.extension.Extension 對(duì)象列表
    
    distutils.core.setup(
    	name = 'python_to_so',	# 包名稱(chēng)
        version = "1.0",	# 包版本號(hào)
        ext_modules = cpy,	# 擴(kuò)展模塊
        author = 'ohuo',	# 作者
        author_email = 'aha',	# 作者郵箱
    )

if __name__ == '__main__':
    file = 'hello.py'
    py2so(file)

2)執(zhí)行編譯腳本

python3 py2so.py build_ext --inplace

3)使用 .so中打包的方法,import_my_so.py

import hello
hello.main()

輸出:

aha, hello

·hello.py·

def main():
    print("aha, hello")

到此這篇關(guān)于python打包成 .so的實(shí)現(xiàn)步驟的文章就介紹到這了,更多相關(guān)python打包成 .so內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • 淺談pyqt5中信號(hào)與槽的認(rèn)識(shí)

    淺談pyqt5中信號(hào)與槽的認(rèn)識(shí)

    這篇文章主要介紹了淺談pyqt5中信號(hào)與槽的認(rèn)識(shí),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-02-02
  • python中opencv與PIL圖片讀取保存及相互轉(zhuǎn)化方式

    python中opencv與PIL圖片讀取保存及相互轉(zhuǎn)化方式

    這篇文章主要介紹了python中opencv與PIL圖片讀取保存及相互轉(zhuǎn)化方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • 使用pandas讀取表格數(shù)據(jù)并進(jìn)行單行數(shù)據(jù)拼接的詳細(xì)教程

    使用pandas讀取表格數(shù)據(jù)并進(jìn)行單行數(shù)據(jù)拼接的詳細(xì)教程

    這篇文章主要介紹了使用pandas讀取表格數(shù)據(jù)并進(jìn)行單行數(shù)據(jù)拼接的詳細(xì)教程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • Python實(shí)現(xiàn)處理Excel數(shù)據(jù)并生成只讀模式

    Python實(shí)現(xiàn)處理Excel數(shù)據(jù)并生成只讀模式

    這篇文章主要為大家詳細(xì)介紹了如何使用 Python 處理 Excel 數(shù)據(jù),并生成只讀模式的 Excel 文檔,文中的示例代碼簡(jiǎn)潔易懂,有需要的小伙伴可以參考下
    2023-11-11
  • 基于python調(diào)用jenkins-cli實(shí)現(xiàn)快速發(fā)布

    基于python調(diào)用jenkins-cli實(shí)現(xiàn)快速發(fā)布

    這篇文章主要介紹了基于python調(diào)用jenkins-cli實(shí)現(xiàn)快速發(fā)布,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • 詳解關(guān)于Django中ORM數(shù)據(jù)庫(kù)遷移的配置

    詳解關(guān)于Django中ORM數(shù)據(jù)庫(kù)遷移的配置

    這篇文章主要介紹了詳解關(guān)于Django中ORM數(shù)據(jù)庫(kù)遷移的配置,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-10-10
  • 詳解如何在Pandas中刪除常量列

    詳解如何在Pandas中刪除常量列

    常數(shù)列不提供可變性,這意味著它們無(wú)助于區(qū)分不同的數(shù)據(jù)點(diǎn),在許多機(jī)器學(xué)習(xí)模型中,這些列會(huì)引入冗余或不相關(guān)的數(shù)據(jù),從而對(duì)性能產(chǎn)生負(fù)面影響,因此,通常必須刪除常量列,所以本文我們將探索如何使用Python識(shí)別和刪除Pandas DataFrame中的常量列,需要的朋友可以參考下
    2025-03-03
  • python創(chuàng)建生成器以及訪問(wèn)的方法詳解

    python創(chuàng)建生成器以及訪問(wèn)的方法詳解

    這篇文章主要介紹了python創(chuàng)建生成器以及訪問(wèn)的方法詳解,與列表一次性地將數(shù)據(jù)全都加載到內(nèi)存不同的是,生成器使用推斷加載數(shù)據(jù),每次只推斷出一個(gè)對(duì)象,在數(shù)據(jù)量比較大時(shí),可以節(jié)省內(nèi)存,需要的朋友可以參考下
    2023-11-11
  • Pytorch:Conv2d卷積前后尺寸詳解

    Pytorch:Conv2d卷積前后尺寸詳解

    這篇文章主要介紹了Pytorch:Conv2d卷積前后尺寸,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • python ftplib上傳文件名亂碼的解決辦法

    python ftplib上傳文件名亂碼的解決辦法

    本文主要介紹了python ftplib上傳文件名亂碼的解決辦法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-04-04

最新評(píng)論