使用python 已經一段時間了 ,現將python 中可能用到的技巧和一些知識點分享如下。
1.lambda使用。
lambda函式,是乙個匿名函式,建立語法:
lambda parameters:express
舉例如下:
根據引數是否為
1
決定s為yes還是no
>>> s
=
lambda
x:
"yes"
if
x
=
=
1
else
"no"
>>> s(
0
)
'no'
>>> s(
1
)
'yes'
2.map使用
直接上**
>>>
def
f(x):
...
return
x
*
x
>>>
map
(f, [
1
,
2
,
3
,
4
,
5
,
6
,
7
,
8
,
9
])
[
1
,
4
,
9
,
16
,
25
,
36
,
49
,
64
,
81
]
map()傳入的第乙個引數是f,即函式物件本身。
3.正規表示式
[0-9] 任意乙個數字,等價\d
[a-z] 任意乙個小寫字母
[a-z]任意乙個大寫字母
[^0-9] 匹配非數字,等價\d
\w 等價[a-z0-9_],字母數字下劃線
\w 等價對\w取非
. 任意字元
匹配內部任意字元或子表示式
[^] 對字元集合取非
* 匹配前面的字元或者子表示式0次或多次
+ 匹配前乙個字元至少1次
? 匹配前乙個字元0次或多次
^ 匹配字串開頭
$ 匹配字串結束
importre#3位數字-3到8個數字
#r代表後面是正規表示式
m = re.match(r'
\d\-\d
', '
010-12345')
#print(dir(m))
(m.string)
(m.pos, m.endpos)#分組
#以括號分組()
m = re.match(r'
^(\d)-(\d)$
', '
010-12345')
(m.groups())
(m.group(0))
print(m.group(1))
print(m.group(2))#分割
p = re.compile(r'
\d+'
(type(p))
print(p.split('
one1two3three3four4'))
t = '
20:15:45
'm=re.match(r'
^(0[0-9]|1[0-9]|2[0-3]|[0-9])\:(0[0-9]|1[0-9]|2[0-9]|3[0-9]|4[0-9]|5[0-9]|[0-9])\:(0[0-9]|1[0-9]|2[0-9]|3[0-9]|4[0-9]|5[0-9]|[0-9])$
', t)
print(m.groups())
python使用小結
a sorted d.items key lambda x x 1 reverse true print a 輸出 a 1 b 23 c 56 list不同元素計數 陣列則轉list計數 list 1,1,2,2,3 print list set1 set list print set1 print...
python小結 python小結
c python33新增到你的path 環境變數中,你可以在dos 視窗中 輸入以下命令 set path path c python33 id 方法的返回值就是物件的記憶體位址。在 行 首行 後插入至少一行特殊的注釋行來定義原始檔的編碼。coding encoding sys.modules 模組...
Python使用scrapy框架小結
1 整個專案的構成 2 乙個完整的專案設計四個python檔案的編寫,分別是items.py qutoes spider.py scrapy genspider qutoes spider.py jycinema.com後生成,非系統自帶 settings.py pipelines.py 四個檔案對...