python學習 第十四天

2021-08-12 00:22:23 字數 2266 閱讀 8122

在下這廂有禮了

python正規表示式

python通過re模組提供對正規表示式的支援。使用re的一般步驟是先將正規表示式的字串形式編譯為pattern例項,然後使用pattern例項處理文字並獲得匹配結果(乙個match例項),最後使match例項獲得資訊,進行其他的操作。

# encoding: utf-8

import re

# 將正規表示式編譯成pattern物件

pattern = re.compile(r'hello')

# 使用pattern匹配文字,獲得匹配結果,無法匹配時將返回none

match = pattern.match('hello world!')

if match:

# 使用match獲得分組資訊

print match.group()

### 輸出 ###

# hello

match

match物件是一次匹配的結果,包含了很多關於此次匹配的資訊,可以使用match提供的可讀屬性或方法來獲取這些資訊。

import re

m = re.match(r'(\w+) (\w+)(?p.*)', 'hello world!')

print "m.string:", m.string

print "m.re:", m.re

print "m.pos:", m.pos

print "m.endpos:", m.endpos

print "m.lastindex:", m.lastindex

print "m.lastgroup:", m.lastgroup

print "m.group(1,2):", m.group(1, 2)

print "m.groups():", m.groups()

print "m.groupdict():", m.groupdict()

print "m.start(2):", m.start(2)

print "m.end(2):", m.end(2)

print "m.span(2):", m.span(2)

print r"m.expand(r'\2 \1\3'):", m.expand(r'\2 \1\3')

### output ###

# m.string: hello world!

# m.re: <_sre.sre_pattern object at 0x016e1a38>

# m.pos: 0

# m.endpos: 12

# m.lastindex: 3

# m.lastgroup: sign

# m.group(1,2): ('hello', 'world')

# m.groups(): ('hello', 'world', '!')

# m.groupdict():

# m.start(2): 6

# m.end(2): 11

# m.span(2): (6, 11)

# m.expand(r'\2 \1\3'): world hello!

pattern

pattern物件是乙個編譯好的正規表示式,通過pattern提供的一系列方法可以對文字進行匹配查詢。

pattern不能直接例項化,必須使用re.compile()進行構造。

pattern提供了幾個可讀屬性用於獲取表示式的相關資訊:

pattern: 編譯時用的表示式字串。

flags: 編譯時用的匹配模式。數字形式。

groups: 表示式中分組的數量。

groupindex: 以表示式中有別名的組的別名為鍵、以該組對應的編號為值的字典,沒有別名的組不包含在內。

import re

p = re.compile(r'(\w+) (\w+)(?p.*)', re.dotall)

print "p.pattern:", p.pattern

print "p.flags:", p.flags

print "p.groups:", p.groups

print "p.groupindex:", p.groupindex

### output ###

# p.pattern: (\w+) (\w+)(?p.*)

# p.flags: 16

# p.groups: 3

# p.groupindex:

學習python 第十四天

python 傳送電子郵件 訪問 http協議,傳送郵件要使用smtp。smtp mail transfer protocol 即簡單郵件傳輸協議,它是一組用於由源位址到目的位址傳送郵件的規則,由它來控制信件的中轉方式。python的smtplib提供了一種很方便的途徑傳送電子郵件。它對smtp協議...

python學習第十四天

1 遞迴函式 自己呼叫自己的函式 遞 去歸 回 一去一回叫做遞迴 遞迴函式有回的過程,有兩種情況可以觸發 1.當最後一層函式全部執行結束的時候,有觸底 的過程 回馬槍 回到上層函式空間的呼叫處 2.遇到return返回值,直接返回上層空間的呼叫處 遞迴函式在執行的時候,需要記憶體開闢空間才可以,這個...

Python 第十四天

物件導向程式設計 object oriented programming,簡稱 oop 是一種封裝 的方法。封裝,其實就是隱藏實現功能的具體 僅留給使用者使用的介面,就好像使用計算機,使用者只需要使用鍵盤 滑鼠就可以實現一些功能,而根本不需要知道其內部是如何工作的。python 中,建立乙個類使用c...