原创 Node.js中, 使用Q.ninvoke封裝對象方法爲promise

var Q = require('q'); function _o(msg){console.log(msg);} function main(){ var obj1 = { var1: 1, func1:

原创 CentOS6中,安裝PHP7

最近在安裝Zabbix管理工具的時候遇到了PHP安裝的問題, 折騰了一陣, 總算搞定, 期間查了一些資料, 分享出來, 供大家參考, 少走些彎路. 更新軟件源[1] wget https://dl.fedoraproject.

原创 javascript中,自動類型轉換總結

類型不同的2個變量做加法(+)運算時,會發生自動類型轉換: 如果2個變量是number, boolean, null, undefined中不同的2種類型,那麼計算結果爲number,其中null被當做0,undefined被當

原创 JavaScript中,for, while, if, switch用到的後綴遞減(a--)運算

環境: Chrome 版本 50.0.2661.18 dev (64-bit) for for(a=2; a--; ){console.log(a);} // output: // 1 // 0 while a=2; while(

原创 [MySQL][Gap Lock][Next-Key Lock]淺析

1. 基本信息 [lslxdx@localhost ~]# mysql --version /* mysql Ver 15.1 Distrib 10.1.21-MariaDB, for osx10.12 (x86_64) using

原创 openTSDB/Bosun報警語法 介紹/學習筆記

openTSDB表達式概述 /api/query, 內含rate options, filters Filters Metric Query String Format openTSDB中文版 Bosun表達式 - 英文 運算優先級

原创 Python中, datetime, date, timestatmp, string互相轉換

date -> datetime timestamp -> datetime string -> datetime datetime -> date datetime -> timestamp datetime -> string t

原创 實用Unicode

翻譯: https://nedbatchelder.com/text/unipain.html 這是我在PyCon 2012做的一次分享。你在這個頁面看到的是演示稿和描述文字,全屏版的演示稿在這裏,也可以直接看這個分享視頻(國內 國外

原创 冒泡排序的優化

維基百科中的描述 冒泡排序(英語:Bubble Sort,臺灣另外一種譯名爲:泡沫排序)是一種簡單的排序算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換

原创 How to monkeypatch a staticmethod/classmethod/instancemethod?

0 - 初始狀態 1 - 修改staticmethod 2 - 修改classmethod 3 - 修改instancemethod 3-1 - 全部實例 3-2 - 單個實例 最近在用Mock的mock.patch替換實例

原创 [exec][source][fork]區別

1.sh #!/bin/bash A=B echo "PID for 1.sh before exec/source/fork:$$" export A echo "1.sh: \$A is $A" case $1 in

原创 一鍵設置L2TP腳本-Ubuntu14.04LTS

親測在Vultr和UltraVPS的Ubuntu 14.04 LTS成功搭建L2TP的VPN。 本方法使用Linux自帶的賬戶認證作爲L2TP的認證。用戶名默認爲vpn_user,密碼在腳本執行過程中,由執行者手動設定密碼;PSK爲psk

原创 Shell中, 退出整個腳本

常規做法 cat >test.sh<<EOF'' #!/bin/bash exit_script(){ exit 1 } echo "before exit" exit_script echo "after exit" EOF

原创 [super][繼承][面向對象][構造函數][多重繼承]

super()內置函數 父類的構造函數必須手動調用, 調用方式有2種: 1. MyParentClass.__init__(xxx) 2. super(MyClass, self).__init__(xxx) 區別在於: 1比較直觀

原创 使用metaclass驗證子類

實驗代碼 # coding: utf-8 # Python2中定義Metaclass, 該Metaclass要繼承自type, 實現__new__方法 class MetaCls(type): def __new__(meta,