1. 程式人生 > >Python程式設計快速上手-第七章實踐

Python程式設計快速上手-第七章實踐

初學python,嘗試著寫一寫,僅供參考,歡迎指正!

7.18.1 強口令檢測

寫一個函式,它使用正則表示式,確保傳入的口令字串是強口令。強口令的定義是:長度不少於8 個字元,同時包含大寫和小寫字元,至少有一位數字。你可能需要用多個正則表示式來測試該字串,以保證它的強度。
import re
passWord=str(input('請輸入口令,長度不小於8\n'))
if len(passWord)<8:
    passWord=input('the length must be bigger than eight\n')
if re.compile(r'[A-Z]').search(passWord)==None:
    passWord=input('password must contain Upper character\n')
if re.compile(r'[a-z]').search(passWord)==None:
    passWord=input('password must contain lower character\n')
if re.compile(r'[0-9]').search(passWord)==None:
    passWord=input('password must contain digit\n')
else:
    print('proper password,congratulations')

7.18.2 strip()的正則表示式版本

寫一個函式,它接受一個字串,做的事情和strip()字串方法一樣。如果只傳入了要去除的字串,沒有其他引數,那麼就從該字串首尾去除空白字元。否則,函式第二個引數指定的字元將從該字串中去除。
import re
def stripFunc(aString,arguement=''):
    if arguement=='':
        aString=re.compile(r'^\s*').sub('',aString)
        aString=re.compile(r'\s*$').sub('',aString)
        print(aString)
    else:
        aString=re.compile('^'+arguement+'*').sub('',aString)
        aString=re.compile(arguement+'*$').sub('',aString)
        print(aString)
stringOne=str(input('print original string\n'))
stringTwo=str(input('print replacement string\n'))
stripFunc(stringOne,arguement=stringTwo)