原创 Python 導入模塊詳解

文章目錄1. import 搜索路徑2. 重新導入模塊 1. import 搜索路徑 import sys sys.path 路徑搜索 從上面列出的目錄裏依次查找要導入的模塊文件 ’ ’ 表示當前路徑 程序執行時導入模塊路

原创 Python-functools中的partial函數和wraps函數

文章目錄Python中的functoolspartial函數(偏函數)wraps函數 Python中的functools import functools dir(functools) 結果 ['MappingProxyType

原创 python垃圾回收(一)

文章目錄小整數對象池大整數對象池intern機制總結 小整數對象池 整數在程序中的使用非常廣泛,Python爲了優化速度,使用了小整數對象池, 避免爲整數頻繁申請和銷燬內存空間。 Python 對小整數的定義是 [-5, 257)

原创 MySQL基礎架構: 一條SQL查詢語句是如何執行的?

文章目錄連接器查詢緩存分析器優化器執行器 我們經常說,看一個事兒千萬不要直接陷入細節裏,你應該先鳥瞰其全貌,這樣能夠幫助你從高維度理解問題。同樣,對於 MySQL 的學習也是這樣。平時我們使用數據庫,看到的通常都是一個整體。比如,

原创 Python垃圾回收(三) - gc模塊

文章目錄一.垃圾回收機制1、導致引用計數+1的情況2、導致引用計數-1的情況3、查看一個對象的引用計數二.循環引用導致內存泄露三.垃圾回收四.gc模塊常用功能解析常用函數:gc模塊的自動垃圾回收機制注意點 一.垃圾回收機制 Pyt

原创 MySQL日誌系統:一條SQL更新語句是如何執行的?

文章目錄重要的日誌模塊:redo log重要的日誌模塊:binlog兩階段提交小結 前面我們系統瞭解了一個查詢語句的執行流程,並介紹了執行過程中涉及的處理模塊。相信你還記得,一條查詢語句的執行過程一般是經過連接器、分析器、優化器、

原创 MySQL 全局鎖和表鎖 :給表加個字段怎麼有這麼多阻礙?

文章目錄全局鎖表級鎖小結 今天我要跟你聊聊 MySQL 的鎖。數據庫鎖設計的初衷是處理併發問題。作爲多用戶共享的資源,當出現併發訪問的時候,數據庫需要合理地控制資源的訪問規則。而鎖就是用來實現這些訪問規則的重要數據結構。 **根據

原创 MySQL深入淺出索引(上)

文章目錄索引的常見模型InnoDB 的索引模型索引維護小結 提到數據庫索引,我想你並不陌生,在日常工作中會經常接觸到。比如某一個 SQL 查詢比較慢,分析完原因之後,你可能就會說“給某個字段加個索引吧”之類的解決方案。但到底什麼是

原创 Python私有化變量,方法

xx: 公有變量 _x: 單前置下劃線,私有化屬性或方法,from somemodule import *禁止導入,類對象和子類可以訪問 __xx:雙前置下劃線,避免與子類中的屬性命名衝突,無法在外部直接訪問(名字重整所以訪問不

原创 Python元類詳解

文章目錄1. 類也是對象2. 動態地創建類3. 使用type創建類4. 使用type創建帶有屬性的類5. 使用type創建帶有方法的類6. 到底什麼是元類(終於到主題了)7. __metaclass__屬性8. 自定義元類 1.

原创 Python常用內建函數詳解

文章目錄內建函數rangemap函數filter函數reduce函數sorted函數 內建函數 Build-in Function,啓動python解釋器,輸入dir(builtins), 可以看到很多python解釋器啓動後默認

原创 MySQL行鎖功過:怎麼減少行鎖對性能的影響?

文章目錄從兩階段鎖說起死鎖和死鎖檢測 在上一篇文章中,我跟你介紹了 MySQL 的全局鎖和表級鎖,今天我們就來講講 MySQL 的行鎖。 MySQL 的行鎖是在引擎層由各個引擎自己實現的。但並不是所有的引擎都支持行鎖,比如 MyI

原创 Python重寫父類方法與調用父類方法

文章目錄重寫父類方法調用父類的方法 重寫父類方法 所謂重寫,就是子類中,有一個和父類相同名字的方法,在子類中的方法會覆蓋掉父類中同名的方法 class Cat(object): def sayHello(self):

原创 Python中的包詳解

文章目錄一:引入包1. 若兩個模塊功能有聯繫2. 將其放到同一個文件夾下(msg)3. 使用import 文件.模塊 的方式導入4. 使用from 文件夾 import 模塊 的方式導入5. 在msg文件夾下創建__init__.

原创 Python模塊中的__all__

沒有__all__ 模塊中有__all__ 總結 如果一個文件中有__all__變量,那麼也就意味着這個變量中的元素,不會被from xxx import *時導入