[Python] python轉exe

更新於 發佈於 閱讀時間約 3 分鐘

前言:

在前面的文裡講過,之前交付給工廠的程式都屬於原始碼,但是今天假設不想公開原始碼給其他人的話或是你要交付的對象是客戶,然後又礙於公司的一些規定所以不能給原始碼的時候,其實可以交付pyc檔。但在現今火箭都上外太空了,如果對方有心想要破解的話其實網路想也有很多教導反組譯的方式。
但如果你會修改python直譯器裡的東西的話,那其實一般的反組譯是沒有辦法把你的pyc檔給破解的,但實際上怎麼做?“我沒研究”以後有空再來研究分享給各位。
那為什麼要選擇把python轉成exe呢? 姆姆個人認為有兩點好處:
  1. 不管你是交付py或pyc檔,當你在開發程式的過程中,肯定會用到第三方套件,也就是說對方的電腦也必須安裝那些套件才能使用你的程式。當然這不是什麼大問題把你的套件導到一個檔案,讓對方在使用你的程式前先 pip install 它就可以了。【所以啊~ 轉成exe的時候就會把你當初安裝的第三方套件也給一起弄進 去,這樣對方就可以直接使用】
  2. 另外就是反組譯比較困難,也就是對方沒有辦法很簡單的看到你程式的內容。
接下來讓咱們進入正題,網路上有很多教導python轉exe的方法跟工具,這邊講的是我實際用過而且覺得方便的工具。

安裝auto-py-to-exe

打開console輸入下面的指令:
pip install auto-py-to-exe
稍等一會即安裝完成
在console執行下面的指令把auto-py-to-exe給執行起來:
執行auto-py-to-exe
接下來就會看到起始的畫面如下圖:
起始畫面

使用說明

首先一般來說如果你只有一支主程式的話,就在上圖的“腳本位置”選擇你原始碼的路徑,再點一下“設置”選擇要輸出的路徑。再按下畫面底下的“將.PY轉換為.EXE”就可以把你的py檔轉成exe檔。
這邊以上一篇文章中的sample.py做為例子,完成後就會像下圖中黃色區域所示:
轉換完成
打開目錄就會看到以你程式為命名的資料夾,這邊叫 sample 。接著打開 console 然後切換到 sample 目錄底下,執行 sample.exe 就搞定了。如下圖:
執行sample.exe
以上是最單純的例子,為什麼這樣說呢? 因為你開發功能,不太可能用單一一個程式重頭寫到尾,當然如果只是簡單的功能是可以的。但一般我們會開發自己的模組給程式用,這時候你在py轉成exe的時候就要多帶一個路徑,這樣他才會把你自己開發的(模組)module也一起包進去,以免發生給使用者使用的時候,說找不到對應的模組而不能使用,那要怎麼添加呢?

添加自己的模組

選擇 '高級' 選項然後會看到 '--paths' 然後選擇要跟著exe一起包起來的模組們,再按下轉換就可以了,如下圖所示:
以上就是今天介紹的,如何將py檔轉成exe的大致過程,當然這工具裡面還有很多功能,有需求的就自己研究囉。
另外可能會有人問說能不能點兩下就執行exe,這部分因為姆姆在工作上沒有人提出這樣的需求,但我自己也好奇! 所以日後有時間在來研究一下再把來把這功能補在這篇上。
以上~ 謝謝閱讀。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
姆姆雞抖的沙龍 的其他內容
前言: 今天要講用python來做使用者介面,由於姆姆平常的工作面對是工廠產線生產,所以一般來說交付程式的時候會給(sample.py)或是(sample.pyc)這類的檔案格式,其中py和pyc檔簡單說,差別在一個看的到(py)原始碼一個看不到(pyc)。 TCL: 官方下載網址: PAGE:
Python 是目前主流的程式語言之一,不論是網路上亦或是各大書局。都有豐富的學習資源,如果你是程式語言的初學者,那以 python 作為入坑的第一步來解決不論是生活/工作上的大小事都是非常適合的一個'工具'。 接下來介紹如何安裝python,以及我自己一直都在使用的IDE(整合開發環境)。
前言: 今天要講用python來做使用者介面,由於姆姆平常的工作面對是工廠產線生產,所以一般來說交付程式的時候會給(sample.py)或是(sample.pyc)這類的檔案格式,其中py和pyc檔簡單說,差別在一個看的到(py)原始碼一個看不到(pyc)。 TCL: 官方下載網址: PAGE:
Python 是目前主流的程式語言之一,不論是網路上亦或是各大書局。都有豐富的學習資源,如果你是程式語言的初學者,那以 python 作為入坑的第一步來解決不論是生活/工作上的大小事都是非常適合的一個'工具'。 接下來介紹如何安裝python,以及我自己一直都在使用的IDE(整合開發環境)。
你可能也想看
Google News 追蹤
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
★★★先到自己電子郵件信箱下載教材上的圖片對照閱讀操作。 利用 pyinstaller 將 .py file 轉換成 windows 常用的 .exe 檔案, ★★★程式最後要加上時間暫停程式,才不會程式結束立刻關閉執行視窗,看不到執行結果。 1.>建立一個新的資料夾,VSC 開啟、選擇此資
Thumbnail
想要使用python學習程式應該要怎麼開始呢? 首先就是要下載Python(程式語言)還有Pychar(整合開發環境,IDE)這兩個軟體。 在Google的搜尋欄位打上Python下載, 點選第一個Download Python。 第二步點選Download,選擇你的電腦系統。
Thumbnail
Python擁有便攜性和通用性,適用於多種場景,同時具有全球通用性。Python在科技製造業、資料分析、人工智慧等領域有廣泛應用,對於理工科背景者而言有獨特的優勢。透過在線課程、自學書籍、實作專案,以及參與社群和開源專案,理工背景者可以達成從轉職進入Python程式領域的目標。
Thumbnail
在離線環境需要安裝Python套件時就相當的麻煩,需要先下載好套件包,在打指令安裝,若套件數量一多時就會相當麻煩。 本文將介紹如何利用兩行指令快速的安裝整個資料夾的套件。
Thumbnail
什麼是Python python是電腦程式語言的一種,如同python官方網站上的介紹 "Python是一種程式語,可讓你更快速地工作並更有效的整合系統"。簡單地說,就是你可用python這個程式語言去告訴電腦你想要作什麼,讓電腦來幫你完成你要作的事情。
Thumbnail
Python的模組和庫是可重用的程式碼塊,可透過import語句引入。特定部分可以透過from和import引入,並可使用as指定別名。第三方模組可透過pip工具安裝並在程式碼中使用。此外,也可以創建自定義模組並在其他Python文件中引用。
Thumbnail
在Python中,import是一個關鍵字,用於將其他模組或套件中的程式碼引入到當前的程式中以供使用。 這個關鍵字允許你在你的程式中使用其他地方定義的變數、函式和類等。 當你使用import時,Python會搜索指定模組或套件的位置,並將其中的程式碼載入到你的程式中,這樣你就可以在程式中使用它們
Thumbnail
情況描述 我們在「【🔒 Python 先修班】教你親手打包專屬套件庫的手作課(pip install…)」有提到如何打包Python讓自己的程式變成套件, 讓其他人可以用pip install的方式進行安裝,😲 But… 我們實際上打包後, 發現到引用的檔案都有被打包進去,但目錄卻未被打包
想要開始Python語言的開發環境,有兩種常見方式,一種是下載安裝到本機端,另一種是直接在雲端執行。本文將介紹三個常見的開發工具及其安裝步驟。
Thumbnail
當我們在撰寫一套系統的時候, 總是會提供一個介面讓使用者來觸發功能模組並回傳使用者所需的請求, 而傳統的安裝包模式總是太侷限, 需要個別主機獨立安裝, 相當繁瑣, 但隨著時代的演進與互聯網的崛起, 大部分的工作都可以藉由網頁端、裝置端來觸發, 而伺服端則是負責接收指令、運算與回傳結果, 雲端
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
★★★先到自己電子郵件信箱下載教材上的圖片對照閱讀操作。 利用 pyinstaller 將 .py file 轉換成 windows 常用的 .exe 檔案, ★★★程式最後要加上時間暫停程式,才不會程式結束立刻關閉執行視窗,看不到執行結果。 1.>建立一個新的資料夾,VSC 開啟、選擇此資
Thumbnail
想要使用python學習程式應該要怎麼開始呢? 首先就是要下載Python(程式語言)還有Pychar(整合開發環境,IDE)這兩個軟體。 在Google的搜尋欄位打上Python下載, 點選第一個Download Python。 第二步點選Download,選擇你的電腦系統。
Thumbnail
Python擁有便攜性和通用性,適用於多種場景,同時具有全球通用性。Python在科技製造業、資料分析、人工智慧等領域有廣泛應用,對於理工科背景者而言有獨特的優勢。透過在線課程、自學書籍、實作專案,以及參與社群和開源專案,理工背景者可以達成從轉職進入Python程式領域的目標。
Thumbnail
在離線環境需要安裝Python套件時就相當的麻煩,需要先下載好套件包,在打指令安裝,若套件數量一多時就會相當麻煩。 本文將介紹如何利用兩行指令快速的安裝整個資料夾的套件。
Thumbnail
什麼是Python python是電腦程式語言的一種,如同python官方網站上的介紹 "Python是一種程式語,可讓你更快速地工作並更有效的整合系統"。簡單地說,就是你可用python這個程式語言去告訴電腦你想要作什麼,讓電腦來幫你完成你要作的事情。
Thumbnail
Python的模組和庫是可重用的程式碼塊,可透過import語句引入。特定部分可以透過from和import引入,並可使用as指定別名。第三方模組可透過pip工具安裝並在程式碼中使用。此外,也可以創建自定義模組並在其他Python文件中引用。
Thumbnail
在Python中,import是一個關鍵字,用於將其他模組或套件中的程式碼引入到當前的程式中以供使用。 這個關鍵字允許你在你的程式中使用其他地方定義的變數、函式和類等。 當你使用import時,Python會搜索指定模組或套件的位置,並將其中的程式碼載入到你的程式中,這樣你就可以在程式中使用它們
Thumbnail
情況描述 我們在「【🔒 Python 先修班】教你親手打包專屬套件庫的手作課(pip install…)」有提到如何打包Python讓自己的程式變成套件, 讓其他人可以用pip install的方式進行安裝,😲 But… 我們實際上打包後, 發現到引用的檔案都有被打包進去,但目錄卻未被打包
想要開始Python語言的開發環境,有兩種常見方式,一種是下載安裝到本機端,另一種是直接在雲端執行。本文將介紹三個常見的開發工具及其安裝步驟。
Thumbnail
當我們在撰寫一套系統的時候, 總是會提供一個介面讓使用者來觸發功能模組並回傳使用者所需的請求, 而傳統的安裝包模式總是太侷限, 需要個別主機獨立安裝, 相當繁瑣, 但隨著時代的演進與互聯網的崛起, 大部分的工作都可以藉由網頁端、裝置端來觸發, 而伺服端則是負責接收指令、運算與回傳結果, 雲端