成人视屏在线观看-国产99精品-国产精品1区2区-欧美一级在线观看-国产一区二区日韩-色九九九

您的位置:首頁技術(shù)文章
文章詳情頁

Python項目打包成二進(jìn)制的方法

瀏覽:2日期:2022-06-30 17:43:11
Python項目打包

python本身是一種腳本語音,發(fā)布的話,直接發(fā)布源代碼就可以了,但是,可能有些公司并不想發(fā)布源代碼,那么,就涉及到打包了,網(wǎng)上有很的打包教程,其實我也沒有認(rèn)真去研究,因為我只想簡單點,所以,我打算直接編譯成pyc二進(jìn)制文件來發(fā)布,就可以了。

問題

編譯成二進(jìn)制文件(*.pyc)之后,文件名都變了,模塊之間怎么引用?網(wǎng)上的例子,大都是對單個文件編譯的介紹,對整個目錄編譯的話,也都是輸出到相應(yīng)的文件夾下,需要單獨抽取出來,發(fā)布。

解決問題

一般編譯之后的文件命名為:比如我的源文件為test.py,編譯后輸出到__pycache__文件夾下test.cpython-37.pyc,要保持模塊引用不改變,那么必須在編譯之后重命名為test.pyc文件,批注:37是因為我使用的python版本為3.7.4所以含有37,其他版本要做相應(yīng)的調(diào)整。需要按照原來的項目目錄結(jié)構(gòu)輸出pyc文件才能保證模塊之間調(diào)用沒有問題。

編碼實現(xiàn)

import osimport shutilimport compileallfrom pathlib import Pathversions = '.cpython-37'pycache = '__pycache__'build_dir = 'build'root = os.getcwd()print('正在編譯文件...請等待...')compileall.compile_dir(root) # 編譯build = Path(root,build_dir)if build.exists(): print('正在移除build目錄...請等待...') shutil.rmtree(build)print('正在復(fù)制文件...請等待...')shutil.copytree(root,build) # 復(fù)制文件到build目錄for root, dirs, files in os.walk(build): # 開始遍歷文件# root 表示當(dāng)前正在訪問的文件夾路徑# dirs 表示該文件夾下的子目錄名list# files 表示該文件夾下的文件list# 遍歷文件for f in files: src = os.path.join(root, f) if f.endswith('.py'):os.remove(src) elif f.endswith('.pyc'):upper_dir = root.replace(pycache,'')dst = os.path.join(upper_dir,f.replace(versions,''))shutil.copy(src,dst)for root, dirs, files in os.walk(build): # 移除緩存文件夾 print('正在移除緩存文件...請等待...') if root.endswith(pycache):shutil.rmtree(root)print('打包完成...請查看目錄:'+str(build))

注意文件中版本號的調(diào)整,基本上是通用的,所有的python項目都可以用拿來就用。代碼很簡單,但是很實用。

牛人之所以是牛人,是因為你現(xiàn)在在踩的坑,他曾經(jīng)都已經(jīng)踩過了。

以上就是Python項目打包成二進(jìn)制的方法的詳細(xì)內(nèi)容,更多關(guān)于Python項目打包成二進(jìn)制的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 国产三级香港在线观看 | 亚洲成a人片在线看 | 亚洲 欧美 精品 中文第三 | 精品亚洲视频在线观看 | 国产一级在线观看视频 | 日本一区二区三区在线 视频观看免费 | a一级毛片录像带 录像片 | 欧美白人最猛性xxxxx | 亚洲爽爽 | 久久久久成人精品一区二区 | 免费一级毛片在线播放放视频 | 澳门一级特黄真人毛片 | 毛片大片 | 在线视频一二三区2021不卡 | 国产成人精品一区二三区2022 | 日韩欧美一级a毛片欧美一级 | 特级av毛片免费观看 | 国产区一区二 | 深夜爽爽爽gif福利免费 | 美女张开大腿让男人桶 | 欧美一区二区三区免费高 | 国产亚洲精品国产一区 | 久久久久日韩精品无 | 在线观看国内自拍 | 99久久免费午夜国产精品 | 手机看片福利视频 | 欧美日韩高清不卡一区二区三区 | 免费国产高清精品一区在线 | 亚洲国产成人久久综合一 | 国产一区在线播放 | 国产精品亚洲专一区二区三区 | 亚洲黄色片网站 | 久香草视频在线观看免费 | 亚洲综合黄色 | 精品国产成人a区在线观看 精品国产成人a在线观看 | 精品国产高清不卡毛片 | 中文字幕亚洲综合久久男男 | 草久视频在线观看 | 久草热草| 一区二区三区亚洲视频 | 国产欧美一区二区三区视频在线观看 |