當前位置:首頁 » 編程軟體 » 打開pyc編譯文件

打開pyc編譯文件

發布時間: 2023-09-22 01:46:50

❶ PyInstaller打包、解包與反編譯.pyc文件

PyInstaller官網: https://www.pyinstaller.org/

假設有一個demo.py文件,在同目錄下啟動命令行或從命令行進入當前文件夾,使用如下命令打包

打包後同目錄下會產生兩個文件夾build和dist(distribution),dist文件夾內就是目標程序。

解包使用pyinstxtractor工具
Github地址: https://github.com/extremecoders-re/pyinstxtractor
假設在第1步中,使用-F參數將demo.py打包為獨立可執行文件demo.exe,進入dist文件夾,將pyinstxtractor.py放在該目錄下,在該目錄下啟動命令行或從命令行進入該文件夾,使用如下命令解包

解包得到的內容將放入同目錄下的demo.exe_extracted文件夾

找到目標.pyc文件,比如demo.pyc
反編譯.pyc文件使用uncompyle6工具
Github地址: https://github.com/rocky/python-uncompyle6
可以直接通過pip安裝uncompyle6

由於pyinstaller在打包可執行文件時會將.pyc文件頭部的16位元組magic head去掉,因此需要對需要反編譯的.pyc文件進行預處理,將文件頭部的16位元組magic head補充完整。這里使用一個開源的16進制編輯器ImHex。
Github地址: https://github.com/WerWolv/ImHex
進入demo.exe_extracted文件夾,用16進制編輯器打開struct.pyc文件復制頭部的16位元組magic head,再用16進制編輯器打開demo.pyc文件,將頭部的16位元組改為magic head,即將圖2中的部分更改為圖1中的值即可。

使用前一個命令,反編譯後的源碼內容會顯示在命令行窗口內;使用後一個命令,源碼會列印到指定文件中,如demo.py。
到此為止可以

Invalid pyc/pyo file - Magic value mismatch!
補充magic head後即可正常反編譯。

如果不是項目成員給所謂的程序而不肯給源碼,而我又繞不過這個程序的問題,我才不想折騰這些有的沒的。

❷ PYC文件怎麼打開

很奇怪樓主為什麼要打開pyc文件,pyc是二進制文件,所以你用記事本打開它的時候只會看到亂碼。

py文件作為模塊被import的時候,python為了提高解析速度,對所有這些作為模塊的py文件先作一個類似編譯的動作,產生相應的pyc文件。這樣當有別的程序再次import這些模塊時,python就不用再重新解析py文件,而是讀入pyc文件就可以了

如果你打開pyc文件是為了想看源代碼,那建議你去找回相對應的py文件

❸ 怎樣運行.pyc文件

pyc是一種
二進制文件
,是由py文件經過編譯後,生成的文件,是一種byte
code,py文件變成pyc文件後,載入的速度有所提高,而且pyc是一種跨平台的
位元組碼
,是由python的虛擬機來執行的,這個是類似於JAVA或者.NET的專
虛擬機
的概念.pyc的內容,是跟python的版本屬相關的,不同版本編譯後的pyc文件是不同的,2.5編譯的pyc文件,2.4版本的python是無法執行的。

❹ pyc文件怎麼打開並且修改 急!!!!

安裝python,可以打開pyc的文件來運行……如果想要修改,需要反編譯吧……

❺ 別人寫的python程序如何運行擴展名為.py的文件。

稍微改變一下就行,下面詳解。
如果
python
進程在機器上擁有寫入許可權,那麼它將把程序的位元組碼保存為一個以
.pyc
為擴展名的文件(
".pyc"
就是編譯過的
".py"
源代碼)。當程序運行之後,你會在那些源代碼的附近(也就是說同一個目錄下)看到這些文件python這樣保存位元組碼是作為一種啟動速度的優化。下一次運行程序時,如果你在上次保存位元組碼之後沒有修改過源代碼的話,python將會載入.pyc文件並跳過編譯這個步驟。當python必須重編譯時,它會自動檢查源文件和位元組碼文件的時間戳:如果你又保存了源代碼,下次程序運行時,位元組碼將自動重新創建。

❻ python .pyc是什麼文件

一、什麼是pyc文件?

pyc文件就是py程序編譯後得到的文件,是一種二進制文件。一般是這樣的:

pyc文件經過python解釋器最終會生成機器碼運行。所以pyc文件是可以跨平台部署的,類似Java的.class文件。如果py文件改變,也會重新生成pyc文件。

相關推薦:《Python視頻教程》

二、pyc文件怎麼生成的?

1、被當做模塊調用的時候會自動生成pyc文件。

一般是python腳本被當做模塊被其他腳本文件調用時,就會產生pyc文件,舉個例子:

如果你寫了一個腳本文件image.py是用來生成驗證碼的,如果你在index.py文件中想引用這個腳本的功能,就需要通過import導入image.py文件,然後,如果你運行index.py文件,那就會在image.py文件所在的路徑生成一個image.pyc文件。

2、對於py文件,可以執行下面命令來生成pyc文件。

3、通過代碼來生成pyc文件。

三、為什麼要生成pyc文件?

1、python為了提高運行效率也會進行編譯。

python是解釋型語言,運行的時候需要通過python解釋器編譯,所以先編譯出pyc文件後,可以節省編譯這一步的耗時時間。

2、不想讓源碼泄露。

因為py文件是可以直接看到源碼的,對於一般的商業公司來說,這有點不妙,因為pyc文件可以獨立於py文件,刪除py文件也不會出錯。這就是太好了,只需要編譯成pyc文件再發布出去就好了。

❼ python源代碼程序文件擴展名

python源代碼程序文件擴展名就是:

.py

❽ 如何手動編譯成pyc,可以直接執行pyc么

pyc文件就是 py程序編譯後得到的位元組碼文件 (py->pyc),python為了提高運行效率也會進行編譯,有時候編譯出pyc文件後,刪除py文件也不會出錯助於pyc文件的產生,給樓主舉例加入你有一個邏輯文件abcd.py,裡面有很多函數A,B,C,D,這個時候,如果你有一個test腳本去導入了abcd.py,只要你運行test腳本,在adcd.py目錄下就會生成一個abcd.pyc文件,而不管你是否需要調用A,B,C,D函數

❾ python程序文件test.py編譯後的文件名

python編譯可執行文件的擴展名
python程序的擴展名有.py、.pyc、.pyo和.pyd。.py是源文件,.pyc是源文件編譯後的文件,.pyo是源文件優化編譯後的文件,.pyd是其他語言寫的python庫。 擴展名 在寫Python程序時我們常見的擴展名是py, pyc,其實還有其他幾種擴展名。下面是幾種擴展名的用法。 py:py就是最基本的源碼擴展名。windows下直接雙擊運行會調用python.exe執行。 pyw:pyw是另一種源碼擴展名,跟py唯一的區別是在windows下雙擊pyw擴展名的源碼會調用pythonw.exe執行源碼,這種執行方式不會有命令行窗口。主要用於GUI程序發布時不需要看到控制台信息的情況。 pyc:在執行python代碼時經常會看到同目錄下自動生成同名的pyc文件。這是python源碼編譯後的位元組碼,一般會在代碼執行時自動生成你代碼中引用的py文件的pyc文件。這個文件可以直接執行,用文本編輯器打開也看不到源碼。 pyo:pyo是跟pyc類似的優化編碼後的文件。 pyd:pyd並非從python程序生成,而是其他語言寫成的可以被python調用的擴展。

熱點內容
登錄政務服務網如何保存密碼 發布:2024-11-19 00:59:05 瀏覽:8
怎麼登陸appleid密碼忘了怎麼辦啊 發布:2024-11-19 00:29:54 瀏覽:655
極地大亂斗掛機腳本 發布:2024-11-19 00:29:01 瀏覽:420
iphone怎麼新建文件夾 發布:2024-11-19 00:24:37 瀏覽:913
免費代理伺服器ip和埠怎麼用 發布:2024-11-19 00:20:10 瀏覽:879
c語言帶參數的宏 發布:2024-11-19 00:07:31 瀏覽:946
15人團隊解壓拓展有什麼作用 發布:2024-11-18 23:46:34 瀏覽:307
百米2什麼配置 發布:2024-11-18 23:37:55 瀏覽:651
mp3存儲 發布:2024-11-18 23:20:08 瀏覽:866
自考專升本密碼多少位 發布:2024-11-18 23:16:45 瀏覽:269