DemooPlayer Txt Builder與Python打包的研究
首先是DemooPlayer Txt Builder

這玩意Trarizon寫過,我算是優(yōu)化了一下?(我是自己獨立從零寫的,沒看他的源碼)
可讀取官改自制ini格式并導(dǎo)入本界面。(鋼琴音量自己估著改)
DemooPlayer支持日文,即shiftjis編碼。

注意:含有日文時,這幾個記事本標(biāo)準(zhǔn)編碼保存的文件都不能被DemooPlayer讀取,只有shiftjis可以讀。
而一般要保存成shiftjis編碼,只能用Word和Notepad++,略繁瑣,本工具直接一鍵導(dǎo)出成shiftjis。

寫完本工具后,下一步就是編譯打包發(fā)布。
參考資料:https://blog.csdn.net/lzy98/article/details/83246281
本工具采用Python?3.5.4?+?PyQt5?5.11.3?
四種打包方法都研究了一下
Py2exe不支持Python3.5及以上。

PyInstaller打包似乎是唯一封裝選擇,但打包一個文件不帶GUI都要8MB,這也是沒有辦法的事。如果不封裝到一個文件里,就會有一堆庫。而且這些庫必須和主程序放在一個文件夾下,不然沒法運行,這就是個BUG。

cx_Freeze不支持單文件夾打包,且還是依賴那一堆庫。最先拋棄次方法。
Nuitka單文件打包編譯慢而且還是很大,在跨電腦上還可能有兼容性問題。
nuitka --recurse-all --standalone --windows-disable-console --plugin-enable=qt-plugins 1.py
但如果考慮只在自己電腦運行的話,Nuitka是最佳選擇,去掉--standalone參數(shù),生成的exe不到300KB,而且能脫離生成的依賴庫,單獨放到其他文件夾下運行,這一點比PyInstaller好多了。
總結(jié):單文件打包就是大,?PyInstaller和Nuitka兩種方法各有優(yōu)劣,對外發(fā)布還是用PyInstaller吧。
(個人覺得Python打包就比Java好一點,遠(yuǎn)不如.net系語言以及C系,畢竟Win10自帶.NET?Framework?4.7,省去依賴庫,本體就很小了)
附源碼
https://github.com/Z-fly/DemooPlayer-Txt-Builder.git

