一.安裝python31.下載python源碼包官網(wǎng)網(wǎng)址:https://www.python.org/downloads/我的版本下載地址:wgethttps://www.python.org/ftp/python/3.6.7/Python-3.6.7.tar.xz2.編譯安裝python3.6的步驟2.1安裝python前的庫(kù)環(huán)境,非常重要yuminstall-ygccpatchlibffi-develpython-develzlib-develbzi
系統(tǒng) 2019-09-27 17:45:41 1756
1、函數(shù)實(shí)現(xiàn)#-*-coding:utf-8-*-deftail(filename,n=10):withopen(filename,"r")asf:lines=f.readlines()[-n:]return"".join(lines)2、測(cè)試文件poetry.txt為了方便驗(yàn)證,每行之前加上行號(hào)數(shù)字1.虞美人?宜州見(jiàn)梅作2.3.宋代:黃庭堅(jiān)4.5.天涯也有江南信。6.梅破知春近。7.夜闌風(fēng)細(xì)得香遲。8.不道曉來(lái)開(kāi)遍、向南枝。9.10.玉臺(tái)弄粉花應(yīng)妒。11
系統(tǒng) 2019-09-27 17:45:33 1756
今天來(lái)討論一下裝飾器。裝飾器是一個(gè)很著名的設(shè)計(jì)模式,經(jīng)常被用于有切面需求的場(chǎng)景,較為經(jīng)典的有插入日志、性能測(cè)試、事務(wù)處理等。裝飾器是解決這類(lèi)問(wèn)題的絕佳設(shè)計(jì),有了裝飾器,我們就可以抽離出大量函數(shù)中與函數(shù)功能本身無(wú)關(guān)的雷同代碼并繼續(xù)重用。概括的講,裝飾器的作用就是為已經(jīng)存在的對(duì)象添加額外的功能。1.裝飾器入門(mén)1.1.需求是怎么來(lái)的?裝飾器的定義很是抽象,我們來(lái)看一個(gè)小例子。復(fù)制代碼代碼如下:deffoo():print'infoo()'foo()這是一個(gè)很無(wú)聊
系統(tǒng) 2019-09-27 17:45:33 1756
SessionMiddleware激活后,每個(gè)傳給視圖(view)函數(shù)的第一個(gè)參數(shù)``HttpRequest``對(duì)象都有一個(gè)session屬性,這是一個(gè)字典型的對(duì)象。你可以象用普通字典一樣來(lái)用它。例如,在視圖(view)中你可以這樣用:#Setasessionvalue:request.session["fav_color"]="blue"#Getasessionvalue--thiscouldbecalledinadifferentview,#orman
系統(tǒng) 2019-09-27 17:38:45 1756
在業(yè)務(wù)穩(wěn)定性要求比較高的情況下,運(yùn)維為能及時(shí)發(fā)現(xiàn)問(wèn)題,有時(shí)需要對(duì)應(yīng)用程序的日志進(jìn)行實(shí)時(shí)分析,當(dāng)符合某個(gè)條件時(shí)就立刻報(bào)警,而不是被動(dòng)等待出問(wèn)題后去解決,比如要監(jiān)控nginx的$request_time和$upstream_response_time時(shí)間,分析出最耗時(shí)的請(qǐng)求,然后去改進(jìn)代碼,這時(shí)就要對(duì)日志進(jìn)行實(shí)時(shí)分析了,發(fā)現(xiàn)時(shí)間長(zhǎng)的語(yǔ)句就要報(bào)警出來(lái),提醒開(kāi)發(fā)人員要關(guān)注,當(dāng)然這是其中一個(gè)應(yīng)用場(chǎng)景,通過(guò)這種監(jiān)控方式還可以應(yīng)用到任何需要判斷或分析文件的地方,所以今天
系統(tǒng) 2019-09-27 17:38:40 1756
實(shí)例如下:#環(huán)境:python3.xdefgetExportDbSql(db,index):#獲取導(dǎo)出一個(gè)數(shù)據(jù)庫(kù)實(shí)例的sql語(yǔ)句sql='mysqldump-u%s-p%s-h%s-P%d--default-character-set=utf8--databasesmu_ins_s%s>%s.s%d.mu_ins_%d.sql'%(db['user'],db['pwd'],db['host'],db['port'],index,db['server'],i
系統(tǒng) 2019-09-27 17:38:36 1756
先給出結(jié)論:要替換的字符數(shù)量不多時(shí),可以直接鏈?zhǔn)絩eplace()方法進(jìn)行替換,效率非常高;如果要替換的字符數(shù)量較多,則推薦在for循環(huán)中調(diào)用replace()進(jìn)行替換。可行的方法:1.鏈?zhǔn)絩eplace()string.replace().replace()1.x在for循環(huán)中調(diào)用replace()「在要替換的字符較多時(shí)」2.使用string.maketrans3.先re.compile然后re.sub……defa(text):chars=""for
系統(tǒng) 2019-09-27 17:38:36 1756
深入理解pythontry異常處理機(jī)制#python的try語(yǔ)句有兩種風(fēng)格#一:種是處理異常(try/except/else)#二:種是無(wú)論是否發(fā)生異常都將執(zhí)行最后的代碼(try/finally)try/except/else風(fēng)格try:<語(yǔ)句>#運(yùn)行別的代碼except<名字>:<語(yǔ)句>#如果在try部份引發(fā)了'name'異常except<名字>,<數(shù)據(jù)>:<語(yǔ)句>#如果引發(fā)了'name'異常,獲得附加的數(shù)據(jù)else:<語(yǔ)句>#如果沒(méi)有異常發(fā)生#try的
系統(tǒng) 2019-09-27 17:38:34 1756
1.如果模塊是被導(dǎo)入,__name__的值為模塊名字2.如果模塊是被直接執(zhí)行,__name__的值為'__main__'Py1.py復(fù)制代碼代碼如下:#!/usr/bin/envpythondeftest():print'__name__=',__name__if__name__=='__main__':test()Py2.py復(fù)制代碼代碼如下:#!/usr/bin/envpythonimportPy1.pydeftest():print'__name__
系統(tǒng) 2019-09-27 17:38:30 1756
在Python2.5中,with關(guān)鍵字被加入。它將常用的try...except...finally...模式很方便的被復(fù)用。看一個(gè)最經(jīng)典的例子:withopen('file.txt')asf:content=f.read()在這段代碼中,無(wú)論with中的代碼塊在執(zhí)行的過(guò)程中發(fā)生任何情況,文件最終都會(huì)被關(guān)閉。如果代碼塊在執(zhí)行的過(guò)程中發(fā)生了一個(gè)異常,那么在這個(gè)異常被拋出前,程序會(huì)先將被打開(kāi)的文件關(guān)閉。再看另外一個(gè)例子。在發(fā)起一個(gè)數(shù)據(jù)庫(kù)事務(wù)請(qǐng)求的時(shí)候,經(jīng)常會(huì)用
系統(tǒng) 2019-09-27 17:38:19 1756