天天看點

Small tricks

不想讓轉義生效: print r'/t/r‘à /t/r

unicode()函數可将字元串轉為unicode字元串, 要使用Unicode字元串,隻要在字元串前加上“u”即可

支援中文:encoding=utf-8或gbk或gb2312

# -*- coding: utf-8 -*-

# -*- coding:gb2312 -*- #必須在第一行或者第二行

array.array:

typecode:

c      => char

b(B) => byte(unsigned byte)

h(H) => short(unsigned short)

i(I)   => init( unsigned int)

l(L)   => long( unsigned long)

f       => float

d      => double

z=array.array("b")

z.append( 1 )

異或操作符:^

Python下劃線作為變量字首和字尾指定特殊變量。

_xxx 不能用'from module import *'導入

__xxx__ 系統定義名字

__xxx 類中的私有變量名

"單下劃線" 開始的成員變量叫做保護變量,意思是隻有類對象和子類對象自己能通路到這些變量;

"雙下劃線" 開始的是私有成員,意思是隻有類對象自己能通路,連子類對象也不能通路到這個資料。

以單個Python下劃線開頭(_foo)的代表不能直接通路的類屬性,需通過類提供的接口進行通路,不能用“from xxx import *”而導入;

以雙下劃線開頭的(__foo)代表類的私有成員;

以雙下劃線開頭和結尾的(__foo__)代表python裡特殊方法專用的辨別,如 __init__()代表類的構造函數。

location for python test scripts:

/usr/lib/python2.4/test

usage of datetime:

擷取一天後的時間格式:

now_t = int( time.time() )

span_timestamp = time.localtime( now_t + 24 * 3600)

time.strftime( "%Y-%m-%d-%H:%M:%S", span_timestamp )

getopt:

import getopt

opts, args = getopt.getopt( sys.argv[1:], "hd:" )   # ./run.pl [-h] -d xxxx aaa bbb ccc

opts is like this:

[("-h",""), ("-d", "xxxx")]

args

["aaa", "bbb", "ccc"]

定義類資料成員:

class temp:

    def __init__(self):

      print "Hello"

    Hello = "Hello"

    _Hello = "Hello"

t = temp()

t.Hello

t._Hello