資料介紹
Python是一種半編譯半解釋型運(yùn)行環(huán)境。首先,它會在模塊“載入”時(shí)將源碼編譯成字節(jié)碼(ByteCode)。而后,這些字節(jié)碼會被虛擬機(jī)在一個(gè)“巨大”的核心函數(shù)里解釋執(zhí)行。這是導(dǎo)致Python性能較低的重要原因,好在現(xiàn)在有了內(nèi)置Just-in-time二次編譯器的PyPy可供選擇。
當(dāng)虛擬機(jī)開始運(yùn)行時(shí),它通過初始化函數(shù)完成整個(gè)運(yùn)行環(huán)境設(shè)置:
創(chuàng)建解釋器和主線程狀態(tài)對象,這是整個(gè)進(jìn)程的根對象。
初始化內(nèi)置類型。數(shù)字、列表等類型都有專門的緩存策略需要處理。
創(chuàng)建_ builtin_ 模塊,該模塊持有所有內(nèi)置類型和函數(shù)。
創(chuàng)建sys模塊,其中包含了sys. path、 modules等重要的運(yùn)行期信息。
初始化import機(jī)制。
初始化內(nèi)置Exception。
創(chuàng)建_ _main_ 模塊,準(zhǔn)備運(yùn)行所需的名字空間。
通過site py將site- packages中的第三方擴(kuò)展庫添加到搜索路徑列表。
執(zhí)行入口py文件。執(zhí)行前會將_ main_ ._ dict_ 作為 名字空間傳遞進(jìn)去。
程序執(zhí)行結(jié)束。
執(zhí)行清理操作,包括調(diào)用退出函數(shù),GC清理現(xiàn)場,釋放所有模塊等。
終止進(jìn)程。
Python源碼是個(gè)寶庫,其中有大量的編程范式和技巧可供借鑒,尤其是對內(nèi)存的管理分配。個(gè)人建議有C基礎(chǔ)的兄弟,在閑暇時(shí)翻看一二 。
先有類型(Type),而后才能生成實(shí)例(Instance)。Python 中的一切都是對象,包括類型在內(nèi)的每個(gè)對象都包含一個(gè)標(biāo)準(zhǔn)頭,通過頭部信息就可以明確知道其具體類型。
頭信息由“引用計(jì)數(shù)”和“類型指針”組成,前者在對象被引用時(shí)增加,超出作用域或手工釋放后減小,等于0時(shí)會被虛擬機(jī)回收(某些被緩存的對象計(jì)數(shù)器永遠(yuǎn)不會為0)。
1.4內(nèi)存管理
為提升執(zhí)行性能,Python 在內(nèi)存管理上做了大量工作。最直接的做法就是用內(nèi)存池來減少操作系統(tǒng)內(nèi)存分配和回收操作,那些小于等于256字節(jié)對象,將直接從內(nèi)存池中獲取存諸空間。
根據(jù)需要,虛擬機(jī)每次從操作系統(tǒng)申請-塊256KB,取名為arena的大塊內(nèi)存。并按系統(tǒng)頁大小,劃分成多個(gè)pool。每個(gè)pool繼續(xù)分割成n個(gè)大小相同的block,這是內(nèi)存池最小存儲單位。
- 半導(dǎo)體收音機(jī)淺談的PDF電子書免費(fèi)下載 171次下載
- 深度學(xué)習(xí)入門:基于Python的理論與實(shí)現(xiàn)電子書 32次下載
- python機(jī)器學(xué)習(xí)筆記資料免費(fèi)下載 39次下載
- 入門級python教程之Python基本參考的電子書免費(fèi)下載 1次下載
- 高級電力電子的學(xué)習(xí)課件PDF電子書免費(fèi)下載 23次下載
- micropython中文教程第二版電子書免費(fèi)下載 0次下載
- 簡明python教程的中文版PDF電子書免費(fèi)下載 0次下載
- FPGA入門教程之HELLO FPGA軟件工具篇PDF電子書免費(fèi)下載 90次下載
- 寫給文科生看的編程入門Python管窺PDF電子書免費(fèi)下載 7次下載
- python入門教材電子書合集免費(fèi)下載 31次下載
- 電冰箱快速維修PDF電子書免費(fèi)下載 51次下載
- 家電維修1128例PDF電子書免費(fèi)下載 207次下載
- Python基礎(chǔ)教程之Python快速入門課件資料免費(fèi)下載 319次下載
- 樹莓派Python編程指南中文.pdf 0次下載
- Python核心編程(中文第二版) 0次下載
- 深度學(xué)習(xí)常用的Python庫 681次閱讀
- Python中Excel轉(zhuǎn)PDF的實(shí)現(xiàn)步驟 1209次閱讀
- 如何安裝Python解釋器 5408次閱讀
- 如何搭建Python編程環(huán)境 5211次閱讀
- Python怎么批量生成PDF文檔 1168次閱讀
- 如何使用Python直接給微信推送消息 2105次閱讀
- 新手指南:8個(gè)好用的Python工具 2472次閱讀
- 最新的編程語言排行說明Python沖上第二 2741次閱讀
- Python的Anaconda入門指南 2674次閱讀
- Python開發(fā)人員年度調(diào)查來了! 2022次閱讀
- 如何快速學(xué)習(xí)Python?學(xué)習(xí)Python有哪些坑? 3942次閱讀
- 機(jī)器學(xué)習(xí)入門寶典《統(tǒng)計(jì)學(xué)習(xí)方法》的介紹 4682次閱讀
- 機(jī)器學(xué)習(xí)和數(shù)據(jù)科學(xué)必讀的10本免費(fèi)在線電子書和書的詳細(xì)介紹 6745次閱讀
- 機(jī)器學(xué)習(xí)實(shí)例:Spark與Python結(jié)合設(shè)計(jì) 2781次閱讀
- 如何使用python進(jìn)行第一個(gè)機(jī)器學(xué)習(xí)項(xiàng)目(詳細(xì)教程篇) 1.6w次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費(fèi)下載
- 0.00 MB | 1491次下載 | 免費(fèi)
- 2單片機(jī)典型實(shí)例介紹
- 18.19 MB | 95次下載 | 1 積分
- 3S7-200PLC編程實(shí)例詳細(xì)資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 11次下載 | 免費(fèi)
- 6100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 7基于單片機(jī)和 SG3525的程控開關(guān)電源設(shè)計(jì)
- 0.23 MB | 4次下載 | 免費(fèi)
- 8基于AT89C2051/4051單片機(jī)編程器的實(shí)驗(yàn)
- 0.11 MB | 4次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費(fèi)
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費(fèi)
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費(fèi)
- 5555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33562次下載 | 免費(fèi)
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費(fèi)
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費(fèi)
- 8開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21539次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537793次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191183次下載 | 免費(fèi)
- 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183277次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138039次下載 | 免費(fèi)
評論