最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python打包生成.pyc和.pyd文件方式

 更新時(shí)間:2026年01月21日 09:15:19   作者:Demons_皮  
.pyd文件的用途、環(huán)境配置、編譯步驟和調(diào)試方法,.pyd文件是Python的動(dòng)態(tài)鏈接庫(kù),適用于特定版本的Python,難以反編譯,執(zhí)行效率高,編譯步驟包括使用Cython和Visual Studio C編譯器,生成.pyd文件,調(diào)試時(shí)需確保文件名一致,并處理導(dǎo)入錯(cuò)誤

pyd文件是什么?

pyd文件類似于DLL, 一般用C/C++語(yǔ)言編譯而成, 可用作模塊導(dǎo)入Python程序中。

pyd文件僅適用于特定版本的Python, 不同版本間互不兼容, 如Python3.8不支持3.7版本的文件。

pyd文件用C/C++語(yǔ)言編譯而成, 難以被反編譯, 在保護(hù)Python程序源碼上有很好的效果。

而且由于使用了C/C++等低級(jí)語(yǔ)言, 代碼執(zhí)行效率較高。

1.環(huán)境

①pip3 install cython

②安裝Visual Studio C編譯器

啟動(dòng)VisualStudioSetup.exe, 必須選擇C++開(kāi)發(fā), 可選Python開(kāi)發(fā), 點(diǎn)擊安裝。

2.待編譯文件hello.py以及setup.py文件

hello.py文件內(nèi)容如下

def greet(str):
    return "hello " + str

setup.py文件內(nèi)容如下

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

def main():
# 這里為文件名 可以增加多個(gè)Extension(' ', [' '])
  extensions = [Extension('hello', ['hello.py'])]  # 待編譯文件名
  setup(ext_modules=cythonize(extensions))
if __name__ == '__main__':
  main()

執(zhí)行打包命令

cmd進(jìn)入hello.py的文件目錄下,執(zhí)行python setup.py build_ext

執(zhí)行成功之后,同目錄會(huì)生成一個(gè)hello.c的文件和build的文件夾,在build文件夾目錄里面存放著編譯好的.pyd文件

3.運(yùn)行調(diào)試

from hello import greet
print(greet("tom"))

現(xiàn)在運(yùn)行打印出hello tom還并未成功,此時(shí)仍是調(diào)用的hello.py文件。

(調(diào)用.pyc、.pyd文件的方式仍是通過(guò)import導(dǎo)入)

刪除hello.py文件,只保留hello.pyc在該目錄,運(yùn)行成功,則說(shuō)明pyc文件成功

刪除hello.pyc文件,從build目錄下拷貝出.pyd并改名為hello.pyd文件,運(yùn)行成功,則說(shuō)明pyd文件成功

4.寫在最后

①若沒(méi)有Visual Studio C,則只生成.pyc文件;有,則可生成.pyd文件

②編譯文件hello.py以及setup.py文件的文件名都需要和后續(xù)對(duì)應(yīng)上的。待編譯文件名是什么,則setup代碼里文件名是什么;setup文件名和打包命令文件名是一致的。

③當(dāng)刪除hello.py文件時(shí),導(dǎo)入會(huì)顯示紅色下劃線,如果同目錄下有hello.pyc或hello.pyd文件,則運(yùn)行不會(huì)報(bào)導(dǎo)入失敗錯(cuò)誤

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python字典和列表性能之間的比較

    Python字典和列表性能之間的比較

    今天給大家介紹的是Python列表和字典的相關(guān)知識(shí),文中對(duì)Python字典和列表的性能作了充分的比較,好奇的小伙伴們一起來(lái)看看吧,需要的朋友可以參考下
    2021-06-06
  • 用Flask實(shí)現(xiàn)token登錄校驗(yàn)的解決方案

    用Flask實(shí)現(xiàn)token登錄校驗(yàn)的解決方案

    網(wǎng)站、小程序、APP 是否已經(jīng)登錄所代表的狀態(tài),代表一個(gè)概念是登錄態(tài), 我們常用的登錄態(tài)驗(yàn)證方式有cookie,session,token,token提供了另外一種不需要緩存賬戶和密碼的登錄狀態(tài)驗(yàn)證方式,本文給大家介紹了用Flask實(shí)現(xiàn)token登錄校驗(yàn)的解決方案,需要的朋友可以參考下
    2024-03-03
  • python3.9和pycharm的安裝教程并創(chuàng)建簡(jiǎn)單項(xiàng)目的步驟

    python3.9和pycharm的安裝教程并創(chuàng)建簡(jiǎn)單項(xiàng)目的步驟

    這篇文章主要介紹了python3.9和pycharm的安裝教程并創(chuàng)建簡(jiǎn)單項(xiàng)目的步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • python實(shí)現(xiàn)mask矩陣示例(根據(jù)列表所給元素)

    python實(shí)現(xiàn)mask矩陣示例(根據(jù)列表所給元素)

    這篇文章主要介紹了python實(shí)現(xiàn)mask矩陣示例(根據(jù)列表所給元素),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • Python list列表刪除元素的4種方法

    Python list列表刪除元素的4種方法

    本文主要介紹了Python list列表刪除元素的4種方法,主要包括del、pop、remove、clear,具有一定的參考價(jià)值,感興趣的可以了解一下
    2021-11-11
  • python-pyinstaller、打包后獲取路徑的實(shí)例

    python-pyinstaller、打包后獲取路徑的實(shí)例

    今天小編就為大家分享一篇python-pyinstaller、打包后獲取路徑的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-06-06
  • 分析Python編程時(shí)利用wxPython來(lái)支持多線程的方法

    分析Python編程時(shí)利用wxPython來(lái)支持多線程的方法

    這篇文章主要介紹了Python編程時(shí)利用wxPython來(lái)支持多線程的方法,本文主要以開(kāi)發(fā)GUI程序時(shí)做線程通訊作為一個(gè)示例來(lái)講解,需要的朋友可以參考下
    2015-04-04
  • Python實(shí)現(xiàn)數(shù)據(jù)庫(kù)并行讀取和寫入實(shí)例

    Python實(shí)現(xiàn)數(shù)據(jù)庫(kù)并行讀取和寫入實(shí)例

    本篇文章主要介紹了Python實(shí)現(xiàn)數(shù)據(jù)庫(kù)并行讀取和寫入實(shí)例,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2017-06-06
  • PyTorch學(xué)習(xí):動(dòng)態(tài)圖和靜態(tài)圖的例子

    PyTorch學(xué)習(xí):動(dòng)態(tài)圖和靜態(tài)圖的例子

    今天小編就為大家分享一篇PyTorch學(xué)習(xí):動(dòng)態(tài)圖和靜態(tài)圖的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-01-01
  • Python制作旋轉(zhuǎn)花燈祝大家元宵節(jié)快樂(lè)(實(shí)例代碼)

    Python制作旋轉(zhuǎn)花燈祝大家元宵節(jié)快樂(lè)(實(shí)例代碼)

    一年一度的元宵節(jié)來(lái)臨,小編在這里祝大家2022元宵節(jié)快樂(lè),今天小編給大家分享一篇教程關(guān)于Python制作旋轉(zhuǎn)花燈祝大家元宵節(jié)快樂(lè),代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2022-02-02

最新評(píng)論

老河口市| 天津市| 乐业县| 汉川市| 肃北| 唐山市| 密山市| 图们市| 吉水县| 长沙县| 土默特左旗| 宁晋县| 连南| 柘荣县| 淮北市| 江山市| 兴业县| 孟村| 雷山县| 夹江县| 平遥县| 疏附县| 察隅县| 禄丰县| 香格里拉县| 怀宁县| 共和县| 日喀则市| 清涧县| 土默特左旗| 安龙县| 聊城市| 上栗县| 定兴县| 衡阳市| 抚宁县| 荔波县| 温州市| 秦皇岛市| 香港 | 辽宁省|