導航:首頁 > 源碼編譯 > python編譯pyc

python編譯pyc

發布時間:2022-01-16 17:20:28

python怎麼建立.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編譯好的代碼.pyc反編譯為.py

depython是用來反編譯經過python編譯的後綴名為pyc或pyo的位元組碼文件的.
如果你找不到你寫的python源代碼,depython可以幫助你通過pyc/pyo文件來找回這些源代碼。
經depython反編譯得出的python源代碼,和你原來的代碼文件幾乎完全一樣。
http://www.depython.net/?lang=zh

③ python怎麼編譯成pyc文件

如下命令

python-mcompileallxxx.py

可以對當前目錄下的xxx.py文件生成pyc

④ python2.3編寫的.pyc,如何反編譯成.py

DePython是用來反編譯經過python編譯的後綴名為pyc或pyo的位元組碼文件的.
如果你找不到你寫的python源代碼,Depython可以幫助你通過pyc/pyo文件來找回這些源代碼。 經DePython反編譯得出的python源代碼,和你原來的代碼文件幾乎完全一樣。

http://www.depython.net/?lang=zh

⑤ python源碼編程成pyc後,怎麼防止反編譯

無法防止反編譯,但可以混淆,讓你即使反編譯了,也看不懂語法
下面一段源碼

sd=1

defseed(s):
globalsd
sd=s

defrandn(n):
globalsd
sd=(sd*1103515245+12345)&0x7fffffff
returnsd%n

defmain():
seed(11)
foriinxrange(4):
printrandn(313)

if__name__=='__main__':
main()

混淆後

oo000=1
if9-9:Ii.o0o00Oo0O-iI11I1II1I1I
defoooo(s):
globaloo000
oo000=s
if11-11:ii1I-ooO0OO000o
defii11i(n):
globaloo000
oo000=(oo000*1103515245+12345)&0x7fffffff
returnoo000%n
if66-66:iIiI*iIiiiI1IiI1I1*o0OoOoOO00
defI11i():
oooo(11)
forO0Oinxrange(4):
printii11i(313)
if78-78:i11ii11iIi11i.oOoO0oo0OOOo+IiiI/Iii1ii1II11i
if__name__=='__main__':
I11i()#

⑥ 如何編譯Python程序生成.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函數

⑦ 如何編譯生成PYC文件

Python語言編程中如何編譯生成PYC文件?(版本Python V 3.4.1)
(1) compile() 函數
compile() 函數有兩個, 一個是內建函數,另一個是模塊py_compile中的.前者生成一個Compile對象,它只能在代碼中被調用(exec(comp)),不能生成pyc文件。後者必須生成pyc文
件,但不能在交互界面運行它(run 和 exec都不行)。

(2) 生成生成pyc文件
compile(file, cfile=None, dfile=None, doraise=False, optimize=-1)
例子:
compile("test.py")
compile("test.py", "test.pyc")
第一種方法輸出文件在子目錄__pycache__中,而且文件名是test.python-34.pyc,有兩個點,不好!所以一定要用第二種格式輸出文件在當前當前目錄。其它選項都預設就行, -1 表示優化,所以pyo文件也不用去做了。

(3) pyc文件的運行
不能在python的交互界面中運行(run 和 exec都不行)。只能夠在DOS屏幕上運行, 格式為:
python test.pyc [argv]
在程序中調用可以用:
os.system ("python test.pyc ")

(4)內建函數compile()的語法
compile(source, filename, mode[, flags[, dont_inherit]]) -> code
object。
生成一個code對象。
例子:
yuju = "print('hello')"
hc = compile(yuju, "yuju.err", "single")
exec(hc)
輸出:hello
type(hc) --> code
使用時至少要提供3個參數,source是源代碼,它可以是語句、表達式或代碼文件。filename要求一個文件名儲存出錯信息,mode是編譯模式,只能使用如下3種:exec, eval, single。

⑧ Python的py如和轉換成pyc

單獨寫一個python文件,假設命名為comp.py,內容如下:

importpy_compile
py_compile.compile(r'路徑ASA.py')

代碼中「路徑」修改為你放asa.py的文件路徑,然後執行comp.py,會在目錄下生成名字為__pycache__的文件夾,pyc文件就在此文件內。

⑨ python 反編譯 源碼還原py後,怎麼把它再編譯成pyc

不用編譯
Python每次執行的時候,都會檢查py是否有同名的pyc
如果沒有或者pyc比py生成時間更早,就會自動把py翻譯成位元組碼的pyc
然後由pyc解釋執行

閱讀全文

與python編譯pyc相關的資料

熱點內容
有什麼好的付費app 瀏覽:626
java生成6隨機數字 瀏覽:177
匯編語言程序設計教程pdf 瀏覽:44
我的老公是冥王在哪個app上看 瀏覽:70
程序員婚前准備 瀏覽:372
金鏟鏟之戰微信安卓兌換碼怎麼換 瀏覽:846
單片機38解碼器 瀏覽:335
思域換壓縮機 瀏覽:183
必應伺服器ip地址 瀏覽:628
魔獸世界伺服器怎麼連接 瀏覽:39
什麼地方會用到雲伺服器 瀏覽:54
pdfarchitect 瀏覽:676
圖片找不到文件夾 瀏覽:199
看書免費app哪個最好 瀏覽:630
python伺服器怎麼安裝 瀏覽:382
程序員新技術 瀏覽:52
安卓如何在桌面上添加音樂 瀏覽:141
手機相冊加密連接電腦可以看到嗎 瀏覽:894
51單片機怎麼寫成函數 瀏覽:322
你幻想的安卓平板是什麼 瀏覽:36