Python入門基礎總結筆記 正規表示式

2021-10-23 12:46:06 字數 1805 閱讀 7523

完整基礎知識參看**:正規表示式

總結重點

用\d可以匹配乙個數字,\w可以匹配乙個字母或數字

用*表示任意個字元(包括0個),用+表示至少乙個字元

用?表示0個或1個字元

用表示n個字元,用表示n-m個字元:

練習一:

請嘗試寫乙個驗證email位址的正規表示式。版本一應該可以驗證出類似的email:

[email protected]

[email protected]

import re  #正規表示式用到re模組

defis_valid_email

(addr)

:#match()方法判斷是否匹配,如果匹配成功,返回乙個match物件,否則返回none

#使用python的r字首,就不用考慮轉義的問題

if(re.match(r'^\w+\.?\w+\@\w+\.com'

,addr)):

return

true

else

:return

false

# 測試:

assert is_valid_email(

'[email protected]'

)assert is_valid_email(

'[email protected]'

)assert

not is_valid_email(

'bob#example.com'

)assert

not is_valid_email(

'[email protected]'

)print

('ok'

)#結果

ok

import re

defname_of_email

(addr)

: m=re.match(r'^<?(\w+\s*\w*)>?\s*\w*\@\w+\.org'

,addr)

if m ==

none

:return

none

else

:return m.group(1)

# 測試:

assert name_of_email(

'[email protected]')==

'tom paris'

assert name_of_email(

'[email protected]')==

'tom'

print

('ok'

)#結果

ok

其中group具有提取分組的能力:

>>

> m = re.match(r'^(\d)-(\d)$'

,'010-12345'

)>>

> m

<_sre.sre_match object

; span=(0

,9), match=

'010-12345'

>

>>

> m.group(0)

#原始字串

'010-12345'

>>

> m.group(1)

#第乙個字串(括號)

'010'

>>

> m.group(2)

#第二個字串(括號)

'12345'

python入門基礎總結筆記(2) 函式

求絕對值的abs 函式 求最大最小值的max 和min 函式 將其他資料型別轉換為整數的int 函式 在python中,用def語句定義乙個函式,依次寫出函式名 括號 括號中的引數和冒號 編寫乙個求絕對值的例子 def my abs x if x 0 return x else return x其中...

Python入門基礎語法總結

1.type 變數 2.三個引號 3.0 3 0 0到末尾 全部 4.f 佔位符 5.len 6.find 找到這個字元的索引 若 中為一串字元,則返回第乙個字元的索引 若 沒有,則返回 1 replace 原 新 若沒有,則不替換 7.in 變數 返回乙個布林值 8.10 3 3.333 10 3...

Python學習筆記 Python基礎入門

date 2017 03 18 print hello,world 這句話就是告訴python輸出hello,world,怎麼樣,挺簡單的吧!let s do it 所用環境為windows python3.5.2,ide用的為pycharm sublime3,簡單的用sublime3寫,稍微有點複...