原创 Python 設計模式系列之二: 創建型 Simple Factory 模式
一、創建型模式 創建型模式(Creational Pattern)對類的實例化過程進行了抽象,能夠使軟件模塊做到與對象創建和組織的無關性。爲了使體系結構更加清晰,一些軟件在設計上要求當創建類的具體實例時,能夠根據具體的語境來動態地決定
原创 Fedora20安裝PIL
首先輸入命令獲得PIL包: wget http://effbot.org/media/downloads/Imaging-1.1.7.tar.gz 然後輸入打開README,看到裏面會有幾個依賴包,jpegsrc ,libpng,
原创 Django的Q查詢
Complex lookups with Q objects(Q對象的複雜查詢) 僅僅靠單一的關鍵字參數查詢已經很難滿足查詢要求。此時Django爲我們提供了Q查詢: class Q 1、Q對象(django.db.model
原创 Python yield使用方法
您可能聽說過,帶有 yield 的函數在 Python 中被稱之爲 generator(生成器),何謂 generator ? 我們先拋開 generator,以一個常見的編程題目來展示 yield 的概念。 如何生成斐波那契數列
原创 Python @property
@property 可以將python定義的函數“當做”屬性訪問,從而提供更加友好訪問方式,但是有時候setter/getter也是需要的,我們視具體情況吧 請注意以下代碼場景: 代碼片段1: class Parrot(object):
原创 jsonp詳解
json相信大家都用的多,jsonp我就一直沒有機會用到,但也經常看到,只知道是“用來跨域的”,一直不知道具體是個什麼東西。今天總算搞明白了。下面一步步來搞清楚jsonp是個什麼玩意。 同源策略 首先基於安全的原因,瀏覽器是存在同源
原创 fedora20 安裝XMind
環境:fedora 20 xmind 3.4.1 xmind是一款優秀的跨平臺思維導圖軟件,但官方只提供deb包,只能在ubuntu和debian系列下直接安裝。因此本文介紹如何在fedora下安裝xmind,盜取官圖一張~
原创 python json utf-8亂碼
讀取的json文件,然後輸出後亂碼。 亂碼均爲\\u4e00\\u4e2a\\u7ea2\\u4eba\\u7684形式 解決方案: data=json.load(file('test.json')) jsonobj=json.dumps
原创 fedora20設置nginx外部設備訪問
開發手機網站的時候,需要用nginx搭建服務器供手機連接。 輸入ifconfig命令,查找本機的ip地址,然後添加到nginx的配置文件的server_name屬性後面,然後啓動nginx 發現電腦瀏覽器上輸入ip地址可以正常訪問網站,但
原创 Python設計模式系列之一: 用模式改善軟件設計
一、什麼是設計模式 設計模式(design pattern)的提出,是面向對象程序設計演化過程中的一個重要里程碑。正如Gamma,Helm,Johnson和Vlissides在他們的經典著作《設計模式》一書中所說的:設計模式使得人們可
原创 Django Signals 從實踐到源碼分析
當某個事件發生的時候,signal(信號)允許senders(發送者)用來通知receivers(接收者),通知receivers幹嘛?你想要recivers幹嘛就可以幹嘛。這在多處代碼對同一個事件感興趣的時候就有用武之地了。 比如:D
原创 Python裏的enumerate
剛剛看了一下Python裏面的enumerate的部分, enumerate每次回返回一個tuple:(index, value)例子很簡單: fo
原创 MySQL操作集錦
/* 啓動MySQL */ net start mysql /* 連接與斷開服務器 */ mysql -h 地址 -P 端口 -u 用戶名 -p 密碼 /* 跳過權限驗證登錄MySQL */ mysqld --skip-grant
原创 Python設計模式系列之三: 創建型Factory Method模式
一、簡介 工廠方法(Factory Method)模式又稱爲虛擬構造器(Virtual Constructor)模式或者多態工廠(Polymorphic Factory)模式,屬於類的創建型模式。在工廠方法模式中,父類負責定義創建對象
原创 nginx相關命令
nginx -s reload :修改配置後重新加載生效 nginx -s reopen :重新打開日誌文件 nginx -t -c /path