版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
常用模塊和庫——校園卡消費行為分析1使用math模塊實現(xiàn)數(shù)學計算目錄使用os、shutil模塊實現(xiàn)文件的增刪改查等操作2使用random模塊生成隨機數(shù)3使用datetime模塊獲得用戶用餐時長4使用re模塊獲得字符串中的名字、電話5os模塊及shutil模塊os模塊1、查詢操作系統(tǒng)2、查詢工作路徑3、查詢指定目錄下面的文件#查詢操作系統(tǒng)importos#查詢操作系統(tǒng)名稱os.sep#查詢文件路徑的分割符os.linesep#查詢當前平臺使用的行終止符#查詢工作路徑path=os.getcwd()#查詢當前工作目錄,并賦值給pathprint(path)#查詢指定目錄下的文件os.listdir(path)
#查詢當前工作目錄下的文件os模塊及shutil模塊os模塊4、刪除文件5、創(chuàng)建與刪除目錄#刪除文件os.remove('C:\\Users\\tipdm-062\\.ipython\\1.txt')#刪除指定文件#創(chuàng)建與刪除目錄file_name='C:\\Users\\tipdm-062\\my_file'os.mkdir(file_name)#創(chuàng)建文件夾os.rmdir(file_name)#刪除文件夾os模塊及shutil模塊函數(shù)名稱函數(shù)應用os.path.isdir(name)判斷name是不是目錄,不是目錄就返回false。os.path.isfile(name)判斷name這個文件是否存在,不存在返回falseos.path.exists(name)判斷是否存在文件或目錄name。os.path.getsize(name)或得文件大小,如果name是目錄返回0Los.path.abspath(name)獲得絕對路徑os.path.isabs()判斷是否為絕對路徑os.path.normpath(path)規(guī)范path字符串形式os.path.split(name)分割文件名與目錄(事實上,如果完全使用目錄,它也會將最后一個目錄作為文件名而分離,同時它不會判斷文件或目錄是否存在)。os.path.splitext()分離文件名和擴展名。os.path.join(path,name)連接目錄與文件名或目錄os.path.basename(path)返回文件名os.path.dirname(path)返回文件路徑。文件路徑操作函數(shù)os模塊及shutil模塊shutil模塊#改變路徑importshutilshutil.move('C:\\Users\\tipdm-062\\.ipython\\1.txt','C:\\Users\\tipdm-062\\wode')#若存在將會被重寫importshutilshutil.move('C:\\Users\\tipdm-062\\wode\\1.txt','C:\\Users\\tipdm-062\\MyText.txt')1、移動文件或文件夾os模塊及shutil模塊shutil模塊2、復制文件#復制文件importshutilshutil.copyfile('2.py','2.py.copy')
#跨路徑復制文件importshutilshutil.copy('C:\\Users\\tipdm-062\\1.txt','C:\\Users\\tipdm-062\\MyFile.txt')os模塊及shutil模塊shutil模塊3、永久刪除文件和文件夾os.unlink函數(shù)會刪除指定的文件。os.rmdir函數(shù)會刪除路徑指定的文件夾,但是這個文件夾必須是空的,不包含任何文件或子文件夾而shutil.rmtree函數(shù)則可以刪除路徑指定的文件夾,并且在這個文件夾里面的所有文件和子文件夾都會被刪除。4、壓縮與解壓文件對壓縮文件進行解壓處理需要用到shutil.unpack_archive函數(shù)1使用math模塊實現(xiàn)數(shù)學計算目錄使用os、shutil模塊實現(xiàn)文件的增刪改查等操作2使用random模塊生成隨機數(shù)3使用datetime模塊獲得用戶用餐時長4使用re模塊獲得字符串中的名字、電話5math模塊是Python中用于進行數(shù)值和數(shù)學計算的模塊,該模塊提供了對C標準定義的數(shù)學函數(shù)的訪問。math模塊所提供的這些函數(shù)不適用于復數(shù)的計算。使用相應函數(shù)的計算時是不能直接訪問的,需要先導入math模塊,然后通過math靜態(tài)對象調(diào)用對應的計算函數(shù)。一般情況下使用math模塊進行計算所返回的值均為浮點型的數(shù)值結(jié)果。math1.認識math模塊常用的三角函數(shù)及作用說明如下表。math函數(shù)名稱說明math.sin返回弧度值的正弦值math.cos返回弧度值的余弦值math.tan返回弧度值的正切值math.asin返回弧度值的反正弦值math.acos返回弧度值的反余弦值math.atan返回弧度值的反正切值math.radians將角度轉(zhuǎn)換為弧度math.degrees將弧度轉(zhuǎn)換為角度常用的冪函數(shù)和對數(shù)函數(shù)及作用說明如下表。math函數(shù)名稱說明math.exp返回以e為底的x次冪的數(shù)值,其中e=2.718281…math.expm1返回以e為底x次冪的值減1math.log返回以e或其他值為底的自然對數(shù)值math.log1p返回1+x(以e為底)的自然對數(shù)值math.log2返回以2為底x的對數(shù)值math.log10返回以10為底x的對數(shù)值math.pow返回x的y次冪的值math.sqrt返回x的平方根值常用的數(shù)學常量函數(shù)及作用說明如下表。math函數(shù)名稱說明math.pi返回數(shù)學ematical常數(shù)π的值math.e返回數(shù)學ematical常數(shù)e的值math.tau返回數(shù)學ematical常數(shù)τ的值math.inf用于表示浮點正無窮大math.nan用于表示浮點“非數(shù)字”(NaN)值使用sin函數(shù)可計算并返回x(弧度)的三角正弦值。使用cos函數(shù)可計算并返回x(弧度)的三角余弦值。使用tan函數(shù)可計算并返回x(弧度)的三角正切值。3種函數(shù)的x(弧度)的取值均為任意值,返回的數(shù)值結(jié)果均為-1到1之間。math2.運用三角函數(shù)importmathprint(math.sin(2))#計算當弧度為2時的正弦值print(math.cos(4))#計算當弧度為4時的余弦值print(math.tan(8))#計算當弧度為8時的正切值mathsin函數(shù)、cos函數(shù)、tan函數(shù)的計算代碼如下。(1)exp、pow函數(shù)使用exp函數(shù)可計算并返回e次方的x次冪的值,其中e表示的是自然對數(shù)的基數(shù),其取值約為2.7。使用pow函數(shù)可計算并返回x的y次冪,其中x和y為數(shù)值表達式。當x的取值為0或NaN時,pow(1.0,x)和pow(x,0.0)的結(jié)果總是返回1.0。當x的取值為負數(shù),且y不為整數(shù)時,pow函數(shù)便無法進行數(shù)學計算。math3.運用冪函數(shù)與對數(shù)函數(shù)print(math.exp(50))#計算e次方的50次冪print(math.pow(2,5))#計算2次方的5次冪math
exp函數(shù)和pow函數(shù)的計算代碼如下。(2)log函數(shù)使用log函數(shù)可計算并返回指定x的自然對數(shù)值,x的取值為大于0的任意數(shù)值。log函數(shù)還可指定底數(shù)的取值,若使用時未指定底數(shù)值,則函數(shù)會默認底數(shù)值為自然數(shù)e。mathprint(math.log(100))#計算當默認底數(shù)為e,x為100時的自然對數(shù)值print(math.log(20,4))#計算當指定底數(shù)為20,x為4時的自然對數(shù)值math
log函數(shù)的計算代碼如下。(3)sqrt函數(shù)使用sqrt函數(shù)可計算并返回x的平方根,其中x為大于0的任意數(shù)值。sqrt函數(shù)的計算代碼如下。mathprint(math.sqrt(64))#計算當x為64時的平方根1使用math模塊實現(xiàn)數(shù)學計算目錄使用os、shutil模塊實現(xiàn)文件的增刪改查等操作2使用random模塊生成隨機數(shù)3使用datetime模塊獲得用戶用餐時長4使用re模塊獲得字符串中的名字、電話5random模塊是Python中一個用于生成偽隨機數(shù)生成器模塊。random模塊可生成6種不同功能及狀態(tài)的隨機數(shù),包含簿記功能、字節(jié)函數(shù)、整數(shù)函數(shù)、序列函數(shù)、實值分布、替代生成器。當使用默認的偽隨機數(shù)生成器的類時類中的類型必須為NoneType、int、float、str、bytes或bytearray中的一種。當使用系統(tǒng)提供的類時需注意類并非在所有系統(tǒng)上都可用,同時系統(tǒng)提供的類不依賴軟件狀態(tài)。random1.認識random模塊random模塊中所常用的函數(shù)及其作用進行簡單介紹如下。整數(shù)函數(shù)及作用說明如下表。random函數(shù)名稱說明random.randrange返回一個小于指定數(shù)值隨機整數(shù),或指定數(shù)值范圍內(nèi)和步長的隨機整數(shù)random.randint返回一個包含指定范圍的隨機整數(shù)random.getrandbits返回具有指定個數(shù)隨機位的非負整數(shù)序列函數(shù)及作用說明如下表。random函數(shù)名稱說明random.choice從非空序列中返回一個隨機元素random.choices返回從總體中選擇的元素的值大小列表,并進行替換random.shuffle將輸入的序列進行隨機的排序random.sample返回從總體序列或集合中選擇的唯一元素的k長度的列表常用的實值分布函數(shù)及作用說明如下表。random函數(shù)名稱說明random.random返回范圍為[0.0,1.0)下的一個隨機浮點數(shù)random.uniform返回在指定范圍下的一個隨機浮點數(shù)random.triangular返回一個包含指定范圍內(nèi)的三角形分布的隨機數(shù)random.betavariate滿足β分布,返回的結(jié)果在0~1之間的隨機浮點數(shù)random.lognormvariate返回滿足對數(shù)正態(tài)分布的隨機浮點數(shù)random.normalvariate返回滿足正態(tài)分布的隨機浮點數(shù)Python提供了隨機浮點數(shù)的生成,通過指定的函數(shù)便可生成各種各樣符合需求者的取值結(jié)果。使用random函數(shù)可生成并返回默認范圍為[0.0,1.0)下的一個隨機浮點數(shù)。使用uniform函數(shù)可生成并返回指定始末范圍內(nèi)的一個隨機浮點數(shù)。random2.生成隨機浮點數(shù)importrandomprint(random.random())#產(chǎn)生一個函數(shù)默認范圍內(nèi)的隨機浮點數(shù)print(random.uniform(5,6))#產(chǎn)生一個在[5,6]之間的隨機浮點數(shù)randomrandom函數(shù)和uniform函數(shù)的計算代碼如下。在Python中可實現(xiàn)在指定限制條件下生成隨機整數(shù),使用randrange函數(shù)可生成并返回一個隨機的整數(shù)。需注意randrange函數(shù)中的參數(shù)設置會影響生成的隨機整數(shù),該函數(shù)的參數(shù)需都為整數(shù)。random3.生成隨機整數(shù)randrange函數(shù)參數(shù)的數(shù)量設置還可分為以下3種情況。當僅存在一個參數(shù)時,此時函數(shù)會隨機生成一個小于且不等于該參數(shù)的隨機整數(shù)。當存在兩個參數(shù)時,便可建立了生成的隨機整數(shù)的范圍,且生成的隨機整數(shù)大于等于第一個參數(shù)值,小于第二個參數(shù)值當存在3個參數(shù)時,前兩個參數(shù)的作用與情況二相同,而第3個參數(shù)所起到的作用為限制了隨機整數(shù)的步長。randomprint(random.randrange(3))#產(chǎn)生一個小于3的隨機整數(shù)print(random.randrange(3,5))#產(chǎn)生一個在[3,5)之間的隨機整數(shù)#產(chǎn)生一個[5,10)之間且在5的基礎上依次迭代2的隨機整數(shù)print(random.randrange(5,10,2))randomrandrange函數(shù)的計算代碼如下。利用random模塊從給定的序列中進行隨機的抽取,即可獲得(或生成)隨機的元素。使用choice函數(shù)可從一個非空序列中返回一個隨機元素,該序列的形式可為列表、元組或字符串。使用sample函數(shù)可返回從總體序列或集合中選擇的唯一元素的k個長度的列表,在生活中常用于無重復的隨機抽樣。random4.從序列中生成隨機元素choice函數(shù):print(random.choice([6,7,8,9,10,11]))#可得到一個在列表中的隨機元素sample函數(shù):list=['I','Am','Student']print(random.sample(list,2))#可得到一個在列表中隨機選取指定個數(shù)的元素列表randomchoice函數(shù)和sample函數(shù)的計算代碼如下。1使用math模塊實現(xiàn)數(shù)學計算目錄使用os、shutil模塊實現(xiàn)文件的增刪改查等操作2使用random模塊生成隨機數(shù)3使用datetime模塊獲得用戶用餐時長4使用re模塊獲得字符串中的名字、電話5datetime模塊是Python中的一個用于操作日期和時間的模塊,包含字符串類型與時間類型的相互轉(zhuǎn)換、時間算術(shù)運算、標準時間時區(qū)轉(zhuǎn)換等操作。datetime模塊下主要有date、time和datetime類等,其中,date類用于日期類型,time類用于時間類型,而datetime類相當于time、date類的結(jié)合,包含了這兩個類的全部方法。datetime1.認識datetime模塊date類相關(guān)的方法及作用說明如下表。datetime方法名稱說明date.today()返回當前日期date.fromtimestamp()返回時間戳的date對象date.fromisoformat()返回格式為“YYYY-MM-DD”的日期字符串轉(zhuǎn)化的date對象date.fromisocalendar()返回對應的ISO日歷日期指定的年、周和天的date對象date.replace()返回一個替換指定日期字段的新date對象date.timetuple()返回date對象的時間元組續(xù)表。datetime方法名稱說明date.weekday()返回指定日期所在的星期數(shù)(周一為0、周日為6)date.isoweekday()返回符合ISO標準的指定日期所在的星期數(shù)(周一為1、周日為7)date.isocalendar()返回一個包含3個值的元組,3個值依次為年份、周數(shù)、星期數(shù)(周一為1、周日為7)date.isoformat()返回符合ISO的日期字符串,如YYYY-MM-DDdate.strftime()返回date對象轉(zhuǎn)化的指定格式的字符串time類相關(guān)的方法及作用說明如下表。datetime方法名稱說明time.fromisoformat()返回ISO格式的時間字符串轉(zhuǎn)化的一個time對象,如HH:MM:SS:fffftime.replace()返回一個替換指定日期字段的新time對象time.isoformat()返回time對象轉(zhuǎn)化的ISO格式的時間字符串time.strftime()返回time對象轉(zhuǎn)化的給定格式的字符串,如%H:%M:%Sdatetime類相關(guān)的方法及作用說明如下表。datetime方法名稱說明datetime.now()返回當前日期時間的datetime對象datetime.utcnow()返回當前日期時間的UTCdatetime對象datetime.utcfromtimestamp()返回UTC時間戳的datetime對象bine()返回date對象和time對象合并的datetime對象datetime.strptime()返回給定的字符串、時間格式對應的datetime對象datetime.timetz()返回具有相同時、分、秒、微秒、倍數(shù)和tzinfo的時間對象datetime.timestamp()返回時間戳(1)使用date類讀者可以使用date類創(chuàng)建一個date型的對象,date類的語法格式如下。datetime2.時間數(shù)據(jù)基礎操作classdatetime.date(year,month,day)date類的參數(shù)及其說明如下表。datetime參數(shù)名稱說明year接收int。表示年,范圍是[1,9999]。無默認值month接收int。表示月,范圍是[1,12]。無默認值day接收int。表示天數(shù),即當月中的第幾天。無默認值需要注意的是,date類的參數(shù)必須有3個完整的year值、month值和day值,否則程序運行將會報錯。在date類創(chuàng)建的對象中,擁有year、month和day這3個屬性,如果需要改變對象屬性的值,那么可以使用date.replace()方法。date.replace()方法的語法格式如下。datetimedate.replace(year=self.year,month=self.month,day=self.day)fromdatetimeimportdate,time,datetimed=date(2021,11,8)#創(chuàng)建date型的對象print('年:{}\n月:{}\n日:{}'.format(d.year,d.month,d.day))d1=d.replace(year=2019,day=5)#改變?nèi)掌诘哪旰腿誴rint('年:{}\n月:{}\n日:{}'.format(d1.year,d1.month,d1.day))datetime用對象的基本屬性獲得日期的年、月、日,并使用date.replace()方法改變年和日,代碼如下。print(d.timetuple())print(d.weekday())#得到日期的星期數(shù),周一為0print(d.isoweekday())#得到日期的星期數(shù),周一為1print(d.isocalendar())#得到日期的年份、周數(shù)、星期數(shù)(周一為1)datetime日期轉(zhuǎn)化為星期數(shù),代碼如下。print(d.isoformat())#字符串型print(date.fromisoformat('2021-11-08’))print(date.toordinal(d))#整型print(date.fromordinal(738102))datetimedate對象與字符串型和整型進行相互轉(zhuǎn)換,代碼如下。(2)使用time類使用time類創(chuàng)建一個time型的對象,time類的語法格式如下。datetimeclassdatetime.time(hour=0,minute=0,second=0,microsecond=0,tzinfo=None,*,fold=0)time類的主要參數(shù)及其說明如下表。datetime參數(shù)名稱說明hour接收int。表示小時,范圍是[0,24]。默認為0minute接收int。表示分鐘,范圍是[0,60]。默認為0second接收int。表示秒鐘,范圍是[0,60]。默認為0microsecond接收int。表示微秒,范圍是[0,1000000]。默認為0在創(chuàng)建time對象時可以不用完整的輸入時、分、秒、微秒,對于缺少的值程序會默認為0。在time類創(chuàng)建的對象中,擁有hour、minute、second和microsecond這4個屬性。如果需要改變對象屬性的值,那么可以使用time.replace()方法。time.replace()方法的語法格式如下。time.replace(hour=self.hour,minute=self.minute,second=self.second,microsecond=self.microsecond,tzinfo=self.tzinfo,*,fold=0)在time.replace()方法中,前5個參數(shù)的默認值為對應參數(shù)的形參新值,與time類參數(shù)的默認值不同,其余均相同。datetimet=time(10)print(t)print('時:{}\n分:{}\n秒:{}\n微秒:{}'\.format(t.hour,t.minute,t.second,t.microsecond))t=t.replace(minute=30)print('時:{}\n分:{}\n秒:{}\n微秒:{}'\.format(t.hour,t.minute,t.second,t.microsecond))datetime調(diào)用對象的基本屬性獲得時間的時、分、秒、微秒,并使用time.replace()方法改變時間當中的分,代碼如下。print(t.strftime('%H:%M:%S:%f'))#指定得到字符串的形狀print(t.strftime('%H:%M’))print(time.fromisoformat('10:30:00:000000'))#字符串轉(zhuǎn)時間print(t.isoformat())datetime使用time.strftime()方法對字符串型進行相互轉(zhuǎn)換,代碼如下。(3)使用datetime類由于datetime類相當于date、time類的結(jié)合,所以可以根據(jù)前面創(chuàng)建的date對象和time對象,使用combine()方法將兩者合并為一個datetime對象。datetime類的語法格式如下。classdatetime.datetime(year,month,day,hour=0,minute=0,second=0,microsecond=0,tzinfo=None,*,fold=0)
datetime修改datetime對象的基本屬性可以使用datetime.replace()方法,其語法格式如下。datetime.replace(year=self.year,month=self.month,day=self.day,hour=self.hour,minute=self.minute,second=self.second,microsecond=self.microsecond,tzinfo=self.tzinfo,*,fold=0)datetime.replace()方法的參數(shù)是date.replace()方法和time.replace()方法的參數(shù)的結(jié)合,此處將不再過多的描述。datetimedt=bine(d,t)#合并日期和時間print(dt)print(dt.date())#獲得日期部分print(dt.time())#獲得時間部分datetime創(chuàng)建datetime對象并獲得日期和時間部分,代碼如下。1使用math模塊實現(xiàn)數(shù)學計算目錄使用os、shutil模塊實現(xiàn)文件的增刪改查等操作2使用random模塊生成隨機數(shù)3使用datetime模塊獲得用戶用餐時長4使用re模塊獲得字符串中的名字、電話5re模塊提供了與Perl語言類似的正則表達式匹配操作。re模塊將正則表達式編譯成模式對象,然后通過這些模式對象執(zhí)行模式匹配搜索、字符串分割、字符串替換等操作。re模塊使Python語言擁有全部的正則表達式功能。re1.認識re模塊什么是正則表達式:正則表達式是對字符串操作的一種邏輯公式;是一個小巧的、高度專用的編程語言。通過正則表達式可以對指定的文本實現(xiàn)匹配測試、內(nèi)容查找、內(nèi)容替換、字符串分割等功能。正則表達式的設計思想是使用一種描述性的語言給字符串定義一個規(guī)則,凡是符合規(guī)則的字符串,即可匹配成功,否則匹配不成功。re在re模塊中相關(guān)的函數(shù)及作用說明如下表。re函數(shù)名稱說明re.findall匹配字符串中的全部樣式,返回組合列表re.search匹配符合樣式的第一個位置,返回包含匹配信息的對象re.split按匹配樣式切分字符串,返回列表re.sub替換匹配樣式的文本,返回字符串re.match匹配0到多個樣式,返回包含匹配信息的對象re.fullmatch匹配整個字符串,返回包含匹配信息的對象re.finditer匹配字符串中的全部樣式,返回迭代器保存的匹配對象re.subn替換匹配樣式的文本,返回元組re.escape轉(zhuǎn)義樣式中的特殊字符(1)findall函數(shù)findall函數(shù)返回的是正則表達式在字符串中所有匹配結(jié)果的列表。findall函數(shù)的語法格式如下。re.findall(pattern,string,flags=0)re2.re模塊常用函數(shù)findall函數(shù)的參數(shù)及其說明如下表。re參數(shù)名稱說明pattern接收str。表示匹配的正則表達式樣式。無默認值string接收str。表示需要匹配的字符串。無默認值flags接收int或函數(shù)。表示編譯標志,用來修改正則表達式的匹配方法。默認為0如果正則表達式與字符串匹配成功,那么將會以列表的形式返回字符串string中所有與pattern相匹配的全部字串。如果匹配失敗,那么將會返回一個空列表。importrestring1='正則表達式一般由一些普通字符和一些元字符組成。'+\'正則表達式是一種可以用于模式匹配和替換的工具'print(re.findall('正則表達式',string1))#返回一個列表re使用findall函數(shù)匹配“正則表達式”,代碼如下。(2)search函數(shù)search函數(shù)在整個字符串內(nèi)對正則表達式進行匹配,找到第一個匹配后返回一個包含匹配信息的對象。search函數(shù)的語法格式如下。re.search(pattern,string,flags=0)search函數(shù)的參數(shù)說明和findall函數(shù)的參數(shù)說明相同。re如果字符串中沒有能夠匹配的對象,那么返回None。與findall函數(shù)不同的是,search函數(shù)并不要求從字符串的開頭進行匹配,即正則表達式可以是字符串的一部分。使用search函數(shù)匹配“正則表達式”,代碼如下。reprint(re.search('正則表達式',string1))#返回一個匹配(3)split函數(shù)split函數(shù)能夠按照匹配的正則表達式將字符串進行切分,并返回切分后的字符串列表。split函數(shù)的語法格式如下。re.split(pattern,string,maxsplit=0,flags=0)re在split函數(shù)中,pattern、string和flags的參數(shù)說明與findall函數(shù)的參數(shù)說明相同。相比于findall函數(shù),split函數(shù)多了一個maxsplit參數(shù),其接收int型,表示最大分割次數(shù)。如果不指定maxsplit值,那么字符串將被全部分割,該參數(shù)默認為0。如果沒有可匹配的項,那么將會返回原來的字符串。rep_string=string1.split('。')#按句號進行切分print(p_string)re使用split函數(shù)按“?!鼻蟹治谋?,代碼如下。(3)sub函數(shù)sub函數(shù)能夠找到所有匹配正則表達式的字符串并用指定的字符串替換。sub函數(shù)的語法格式如下。re.sub(pattern,repl,stringcount=0,flags=0)如果字符串string中的內(nèi)容匹配了正則表達式,那么會將匹配到的字符串替換成repl。resub函數(shù)的參數(shù)及其說明如下表。re參數(shù)名稱說明pattern接收str。表示匹配的正則表達式樣式。無默認值repl接收str或函數(shù)。若為字符串,則表示反斜杠轉(zhuǎn)義序列被處理;若為函數(shù),則對每個非重復的pattern的情況調(diào)用。無默認值string接收str。表示需要匹配的字符串。無默認值count接收int。表示要替換的最大次數(shù)。默認為0flags接收int或函數(shù)。表示編譯標志,用來修改正則表達式的匹配方法。默認為0print(re.sub('正則表達式','zzbds',string1))#文本替換re使用sub函數(shù)替換指定文本,代碼如下。正則表達式通常由一些普通字符和一些元字符組成。元字符的應用是正則表達式強大的原因,元字符由特殊符號組成,定義了字符集合、子組匹配、模式重復次數(shù)。元字符通過轉(zhuǎn)義字符和其它符號的組合進行字符匹配,使得正則表達式不僅可以匹配一個字符串,而且可以匹配字符串集合。re3.正則表達式語法(1)字符匹配大多數(shù)字母和字符只會匹配其本身。但此規(guī)則也有例外,一些字符是特殊的字符,不會匹配其本身。特殊的字符表示應該匹配一些獨特的東西,或通過重復它們或改變它們的含義來影響正則的其他部分。re常見的特殊字符如下表。re字符說明.表示匹配除去換行符“\n”之外的任意一個字符[]表示匹配多個字符,在中括號內(nèi)部的所有字符都會被匹配|表示用于對左右兩個正則表達式進行匹配^表示匹配字符串起始位置的內(nèi)容$表示匹配字符串的結(jié)束位置的內(nèi)容?表示符號前的元素是可選,并且最多匹配1次續(xù)表。re字符說明*表示符號前的元素會被匹配0次或多次+表示符號前的元素會被匹配1次或多次{n}表示符號前的元素會正好被匹配n次{n,}表示符號前的元素至少會被匹配n次{n,m}表示符號前的元素至少匹配n次,至多匹配m次print(re.findall('正.表達式',string1))#匹配除換行符外的任意一個字符print(re.findall('一[般些]',string1))#匹配“[]”內(nèi)的任意一個字符print(re.findall('正則表|正則表達式',string1))#使用“|”進行匹配re使用特殊字符進行匹配的示例,代碼如下。#匹配以“正則”為起始位置的內(nèi)容forlineinp_string:iflen(re.findall('^正則',line)):prin
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中國紡紗紙錐行業(yè)應用潛力與投資盈利預測研究報告(2024-2030版)
- 中國磷酸三鈉行業(yè)發(fā)展趨勢及投資動態(tài)預測研究報告(2024-2030版)
- 中國硅氮烷產(chǎn)業(yè)前景動態(tài)及需求規(guī)模預測研究報告(2024-2030版)
- 中國電導率變送器行業(yè)競爭格局與供需形勢分析研究報告(2024-2030版)
- 中國電動叉車變速箱行業(yè)需求趨勢及投資前景預測研究報告(2024-2030版)
- 中國生物氫行業(yè)市場現(xiàn)狀分析及競爭格局與投資發(fā)展研究報告(2024-2030版)
- 中國環(huán)烷基潤滑油行業(yè)競爭狀況及投資前景趨勢研究報告(2024-2030版)
- 中國潤喉糖市場消費態(tài)勢與競爭策略分析研究報告(2024-2030版)
- 機床主軸箱課程設計書
- 軟件測試技術(shù)課程設計
- 燃氣管網(wǎng)運行工施工環(huán)境保護詳細措施培訓
- 神經(jīng)系統(tǒng)的分級調(diào)節(jié)課后鞏固練習 高二下學期生物人教版選擇性必修1
- 衛(wèi)生院請休假管理制度
- 靶向治療的題目
- 2024年化學檢驗工(中級工)理論備考試題庫及答案(匯總)
- 新版檢驗檢測機構(gòu)管理評審報告
- 新教材人教版高中英語選擇性必修第一冊全冊教學設計
- 《小學生的自我保護》課件
- 古代辭章領略古代辭章的風華與韻味
- 六年級道德與法治下冊-3-學會反思教案
- 崗位風險排查管理制度
評論
0/150
提交評論