原创 git cherry-pick 的一個陷阱!!!

假設有如下master的分支: ---- master ----- a ----- b ----- c (branch alice) | | o ----- p ----- q (branch bob)

原创 Docker 隻言片語

以下是閱讀 《每天5分鐘玩轉Docker容器技術》的筆記: Dockerfile 中每一個指令都會創建一個鏡像層,上層是依賴於下層的。無論什麼時候,只要某一層發生變化,其上面所有層的緩存都會失效。 docker build -t tar

原创 Git: 避免 merge 的話, 用 rebase

git pull 或者 git remote updategit rebase origin/master 這個方法可以 更新code,但避免 merge

原创 MacOS: 如何設置 MySQL 數據庫採用 utf8mb4 字符集

https://www.linuxidc.com/Linu... 爲了應對無線互聯網的機遇和挑戰、避免 emoji 表情符號帶來的問題、MySQL 數據庫建議都提前採用 utf8mb4 字符集. 總結一下: 要完成修改,需要三個步驟來解決:

原创 Python: 澄清 static/ class / instance /abstract method 的概念

必須有一個默認的東西作爲第一個input argument:class method: cls instance method: self 不需要有一個默認的東西作爲第一個input argument:static method 跟上

原创 python裏 super類的工作原理詳解

這篇文章主要介紹了python裏 super類的工作原理詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨着小編來一起學習學習吧 super 的工作原理如下:

原创 python裏 super類的工作原理

super 的工作原理如下: def super(cls, inst): mro = inst.__class__.mro() return mro[mro.index(cls) + 1] 其中,cls 代表類,inst

原创 Python Process/Thread 概念整理

進程與線程 併發與並行 進程與線程   首先要理解的是,我們的軟件都是運行在操作系統之上,操作系統再控制硬件,比如 處理器、內存、IO設備等。操作系統爲了向上層應用程序提供 簡單一致 的機制來控制複雜而又大相徑庭的低級硬件設備 抽象出 進程

原创 聊聊python裏如何用Borg pattern實現的單例模式

這篇文章主要介紹了聊聊python裏如何用Borg pattern實現的單例模式,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧 有如下 borg pattern 的實現: cla

原创 python 關於 __new__ , __init__ , cls, self 的碎碎念。

本文旨在澄清 python 裏 __new__ vs __init__ 和 cls vs self 的概念。 很多初學者會困擾,python的“魔法函數” __new__ 有啥用? 跟__init__有啥區別? 爲什麼有的函數第一個輸入變

原创 聊聊python 裏用 Borg pattern 實現的單例模式

有如下 borg pattern 的實現: class Borg(object): __shared_state = {} def __init__(self): self.__dict__ = self.

原创 regex 多符號分段

python自帶的 i.e. text.split('.') 只能用單個符號給文本分段,如果想用多個符號分段呢? 比如想用句號,逗號,分號,感嘆號問好等等標點,怎麼辦?這時候用 re.split() import re a='Beauti

原创 Python:staticmethod 和 classmethod的比較

class A(object): def foo(self, x): print "executing foo(%s, %s)" % (self, x) @classmethod def class

原创 在terminal中使用lsof指令,快速查看port信息

有時候我們需要知道電腦中有哪些 進程/應用 正在使用哪個port,這時候就用到一個非常方便的指令:lsof指令 lsof 是 list open files 的意思。在unix系統中,一切皆爲文件,包括tcp/udp的連接。例子: lsof