kidult的Python學習第四彈

2021-09-24 02:45:13 字數 1961 閱讀 1634

內容:課本第七章,

1.?的作用

乙個冷笑話:一開始老是把search寫成research,這個程式真的寫了好久(哭)

>>> import re

>>> noteregex=re.compile(r'實現(可選)?匹配:不論這段文字在不在,正規表示式都會認為匹配。宣告非貪心匹配:匹配盡可能短的字串。')

>>> tip1=noteregex.search('實現可選匹配:不論這段文字在不在,正規表示式都會認為匹配。宣告非貪心匹配:匹配盡可能短的字串。')

>>> tip1.group()

'實現可選匹配:不論這段文字在不在,正規表示式都會認為匹配。宣告非貪心匹配:匹配盡可能短的字串。'

>>> import re

>>> noteregex=re.compile(r'(實現)?可選匹配')

>>> tip1=noteregex.search('實現可選匹配:不論這段文字在不在,正規表示式都會認為匹配。宣告非貪心匹配:匹配盡可能短的字串。')

>>> tip1.group()

'實現可選匹配'

>>> tip2=noteregex.search('可選匹配:不論這段文字在不在,正規表示式都會認為匹配。宣告非貪心匹配:匹配盡可能短的字串。')

>>> tip2.group()

'可選匹配'

裡面的逗號一定能夠要寫成英文逗號哎喂!!!!!!!

>>> greetregex=re.compile(r'(早)')

>>> gr1=greetregex.search('hellokidult早早早早早')

>>> gr1.group()

'早早早早早'

>>> greetregex=re.compile(r'(早)?')

>>> gr1=greetregex.search('hellokidult早早早早早')

>>> gr1.group()

'早早早'

2.區分match物件的groups()、group()、group(1)……

3.完成課本的例項,匹配**號碼和郵箱。

import re,pyperclip

phone_regex=re.compile(r'''(

(\d|(\d))? #區號 ,可選

(\s|-|.)? #分割

(\d) #前三位

(\s|-|.) #分割

(\d) #中間四位

(\s*(ext|x|ext.)\s*(\d))? #可選的分機號

)''', re.verbose)

email_regex=re.compile(r'''(

[a-za-z0-9._+%-]+ #郵箱名

@[a-za-z0-9.-]+ #網域名稱

(.[a-za-z]) #頂級網域名稱

)''',re.verbose)

text = str(pyperclip.paste()) #取得剪貼簿上文字

matches =

for groups in phone_regex.findall(text):

phonenum = '-'.join([groups[1], groups[3], groups[5]]) #取一三五分組

if groups[8]!='' :

phonenum += 'x' + groups[8]

for groups in email_regex.findall(text):

if len(matches)>0:

pyperclip.copy('\n'.join(matches))

print("複製到剪貼簿:")

print('\n'.join(matches))

else:

print('未發現**號碼和郵件位址')

Python學習 Python下 元組 的學習

元組是不可變的,用小括號 定義,而且一旦定義 不可變 型別是tuple 元組看做乙個整體,不可拆分,不可賦值,但可以全部重新賦值 通過圓括號,用逗號分隔,常用在使語句或使用者定義的函式能夠安全地採用一組值的時候 元組的值不會改變 作用 1.保留我們不想被修改的資料 2.可以再對映 集合中當做key使...

python的入門學習 簡單的python練習

python是一種物件導向的解釋型計算機程式語言,由荷蘭人guido van rossum於1989年發明,第乙個公開發行版發行於 1991年。python是純粹的自由軟體,源 和直譯器cpython遵循 gpl gnu general public license 協議。python語法簡潔 清晰...

python學習 Python的迭代器

1 什麼是迭代器 迭代器就是提供 next 方法的物件 2 如何使用迭代器 for v in it python 的 for 語句可對迭代器進行處理,它自動呼叫迭代器的 next 方法進行遍歷,並在遇到 stopiteration 異常後終止迴圈 3 有哪些迭代器?list,dict,檔案物件,都屬...