五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網 會員登陸 & 注冊

Python中的pyc文件是作什么用的?(61)

2023-06-22 07:00 作者:和貓妹學Python  | 我要投稿

小朋友們好,大朋友們好!

我是貓妹,一名愛上Python編程的小學生。

和貓妹學Python,一起趣味學編程。

py文件和pyc文件

我們都知道py后綴是Python源碼文件,偶爾還會看到pyc后綴文件。

pyc后綴文件是做什么用的呢?

咱們今天學習下,pyc文件的基礎知識。

pyc是官方開發(fā)的解釋器編譯過生成的文件,它是二進制文件。

pyc就是python compiled的縮寫,它會保存在一個名叫__pycache__文件夾下。

文件命名有規(guī)律,比如module.cpython-38.pyc。

這里的cpython-38,表示c編寫的Python解釋器,Python解釋器版本是38。

pyc文件的作用是加速程序的執(zhí)行,import模塊時,解釋器會先編譯該模塊,生成pyc文件。

對模塊源文件進行了修改,pyc文件會更新。

模塊的源碼(py)轉換為字節(jié)碼文件(pyc)。

Python在解釋源程序時會分成兩個步驟:

  1. 處理源代碼,編譯生成一個二進制字節(jié)碼文件

  2. 對字節(jié)碼進行處理,才會生成CPU能夠識別的機器碼。

有了模塊的字節(jié)碼文件后,下次程序運行時,如果在上次保存字節(jié)碼之沒有修改過源碼,Python將會加載pyc文件并跳過編譯這個步驟。

舉個例子

pyc文件的生成

在磁盤上建立一個文件夾pyc,在該文件夾下創(chuàng)建兩個Python文件,一個模塊module.py,一個是test.py。

運行test.py會生成文件夾__pycache__,內部有文件module.cpython-38.pyc。

py源碼文件如果沒有加入代碼混淆的話,那么生成的pyc文件,是可以反編譯出源碼的。

我們隨便選一個在線的工具,類似工具有很多,也可以本地編碼實現(xiàn)。

如圖:

pyc文件的用途

既然pyc是py文件編譯生成的,那么pyc文件是否可以替代Python呢?

這樣不就可以隱藏源碼了嗎?

可以的,把test.py放入__pycache__,pyc文件改名為module.pyc。

非模塊文件也可以生成pyc文件

我們刪除其他文件,新建hello.py。

正常運行python文件,不加參數:python hello.py。

如果想生成pyc文件呢?

需要加個參數:python -m py_compile hello.py

生成的hello.cpython-38.pyc可以用Python運行

好了,我們今天就學到這里吧!

如果遇到什么問題,咱們多多交流,共同解決。

我是貓妹,咱們下次見!


Python中的pyc文件是作什么用的?(61)的評論 (共 條)

分享到微博請遵守國家法律
玉龙| 永州市| 玉屏| 肥西县| 大名县| 西乌珠穆沁旗| 保康县| 交城县| 玉环县| 景东| 东山县| 湄潭县| 萍乡市| 皮山县| 会昌县| 富阳市| 澄江县| 齐齐哈尔市| 阳泉市| 郯城县| 康乐县| 亳州市| 永福县| 佛山市| 奉化市| 瓦房店市| 时尚| 永清县| 勃利县| 宾阳县| 沁源县| 玛沁县| 商南县| 安徽省| 盘锦市| 和林格尔县| 沅江市| 阿鲁科尔沁旗| 淮滨县| 桑日县| 乌兰浩特市|