適配器模式把一個(gè)類的接口變換成客戶端所期待的另一種接口,從而使原本接口不匹配而無法在一起工作的兩個(gè)類能夠在一起工作。二,類的Adapter模式的結(jié)構(gòu):三,示例代碼/***目標(biāo)**@authorSalmon**/publicinterfaceTarget{publicvoidrequest();}/***源**@authorSalmon**/publicclassAdaptee{publicvoidspecificRequest(){System.out.p
系統(tǒng) 2019-08-12 09:29:47 1617
背景在實(shí)際項(xiàng)目實(shí)施中,會(huì)編寫很多在服務(wù)器執(zhí)行的作業(yè)腳本。程序中凡是涉及到數(shù)據(jù)庫鏈接、操作系統(tǒng)用戶鏈接、IP地址、主機(jī)名稱的內(nèi)容都是敏感信息。在純內(nèi)網(wǎng)系統(tǒng)中往因?yàn)殚_發(fā)時(shí)間緊迫,往往都直接將這些敏感信息明文方式寫在腳本中了。稍微規(guī)范一點(diǎn)的,創(chuàng)建一個(gè)通用的config文件,將所有這類敏感信息記錄在這個(gè)文件中,腳本以讀取文件方式獲取這些信息。這種方式的好處是腳本不用在應(yīng)用遷移、災(zāi)備部署的時(shí)候再起不同的版本,尤其是大數(shù)據(jù)平臺(tái)作業(yè)運(yùn)行的腳本,如果是需要做災(zāi)備集群,這種
系統(tǒng) 2019-09-27 17:57:49 1616
背景由于工作性質(zhì),經(jīng)常面對不同的問題,某些場景下SQL+Excel、常用辦公軟件不能處理,這時(shí)到網(wǎng)上找一些案例,自己動(dòng)手用python處理。后續(xù),借此博客記錄比較典型的處理過程。后續(xù),陸續(xù)實(shí)際處理的問題,如1.合并PDF2.拆分PDF3.敏感字段MD5脫敏4.從非架構(gòu)化的大文本文件中提取指定條件的記錄需求工作和生活中有時(shí)會(huì)遇到將多個(gè)pdf文件,合并成一個(gè)大文件的情況。例如,掃描時(shí),普通掃描儀或打印機(jī)一頁生成一個(gè)PDF,而一份資料實(shí)際多頁。Adobe的收費(fèi)版
系統(tǒng) 2019-09-27 17:57:30 1616
類也是對象在大多數(shù)編程語言中,類就是一組用來描述如何生成一個(gè)對象的代碼段,在python中也是成立的。classObjectCreator:passmy_object=ObjectCreator()print(my_object)"""輸出結(jié)果:<__main__.ObjectCreatorobjectat0x037DACD0>"""但是,python的類不止于此,類同樣也是一種對象。classObjectCreator:pass上面的代碼段將在內(nèi)存中創(chuàng)建
系統(tǒng) 2019-09-27 17:57:17 1616
正文由于最近自己在做小程序的支付,就在這里簡單介紹一下講一下用python做小程序支付這個(gè)流程。當(dāng)然在進(jìn)行開發(fā)之前還是建議讀一下具體的流程,清楚支付的過程。1.支付交互流程當(dāng)然具體的參數(shù)配置可以參考官方文檔https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=7_3&index=12.獲取openid(微信用戶標(biāo)識(shí))importrequestsfromconfigimportAPPID
系統(tǒng) 2019-09-27 17:57:15 1616
本文實(shí)例為大家分享了python同步兩個(gè)文件夾下的內(nèi)容,供大家參考,具體內(nèi)容如下importosimportshutilimporttimeimportloggingimportfilecmp#日志文件配置log_filename='synchro.log'#日志輸出格式化log_format='%(filename)s[%(asctime)s][%(levelname)s]%(message)s'logging.basicConfig(format=lo
系統(tǒng) 2019-09-27 17:57:02 1616
進(jìn)程和線程進(jìn)程是程序運(yùn)行的實(shí)例。一個(gè)進(jìn)程里面可以包含多個(gè)線程,因此同一進(jìn)程下的多個(gè)線程之間可以共享線程內(nèi)的所有資源,它是操作系統(tǒng)動(dòng)態(tài)運(yùn)行的基本單元;每一個(gè)線程是進(jìn)程下的一個(gè)實(shí)例,可以動(dòng)態(tài)調(diào)度和獨(dú)立運(yùn)行,由于線程和進(jìn)程有很多類似的特點(diǎn),因此,線程又被稱為輕量級的進(jìn)程。線程的運(yùn)行在進(jìn)程之下,進(jìn)程的存在依賴于線程;開胃菜基于Python3創(chuàng)建一個(gè)簡單的進(jìn)程示例fromthreadingimportThreadfromtimeimportsleepclassCoo
系統(tǒng) 2019-09-27 17:57:01 1616
前言我在使用mac安裝virtualwrapper的時(shí)候遇到了問題,搞了好長時(shí)間,才弄好,在這里總結(jié)一下分享出來,供遇到相同的問題的朋友使用,少走些彎路。問題說明:Mac默認(rèn)系統(tǒng)的python2,而我自己用的是brew安裝的python3下面是我安裝過程中出現(xiàn)的問題1.安裝virtualwrapper打開終端,輸入如下的命令pip3installvirtualenvpip3installvirtualenvwrapper2.在配置文件~/.bash_pro
系統(tǒng) 2019-09-27 17:56:58 1616
半次元COS圖爬取-寫在前面今天在瀏覽網(wǎng)站的時(shí)候,忽然一個(gè)莫名的鏈接指引著我跳轉(zhuǎn)到了半次元網(wǎng)站https://bcy.net/打開之后,發(fā)現(xiàn)也沒有什么有意思的內(nèi)容,職業(yè)的敏感讓我瞬間聯(lián)想到了cosplay,這種網(wǎng)站必然會(huì)有這個(gè)的存在啊,于是乎,我準(zhǔn)備好我的大爬蟲了。把上面的鏈接打開之后,被我發(fā)現(xiàn)了吧,就知道我的第八感不錯(cuò)滴。接下來就是找入口,一定要找到圖片鏈接的入口才可以做下面的操作這個(gè)頁面不斷往下拖拽,頁面會(huì)一直加載,當(dāng)時(shí)當(dāng)你拖拽一會(huì),就停下來了,就是這
系統(tǒng) 2019-09-27 17:56:54 1616
有些時(shí)候,我們需要將某些程序放到子進(jìn)程中去運(yùn)行,以達(dá)到整合系統(tǒng)的目的。在Python中,一個(gè)非常好的選擇就是使用subprocess模塊,本模塊為開辟子進(jìn)程去執(zhí)行子程序提供了統(tǒng)一的接口,更加便于學(xué)習(xí)和使用。同時(shí),對于在子進(jìn)程里的程序,我們希望能夠?qū)崟r(shí)獲取其輸出,以在主進(jìn)程中打印相關(guān)信息,使我們能夠了解當(dāng)前子程序的執(zhí)行進(jìn)度。對此,subprocess模塊也提供了相應(yīng)的參數(shù),能夠?qū)⒆映绦虻臉?biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯(cuò)誤輸出返回給主程序。下面,我們就通過一個(gè)例子來說明這個(gè)功
系統(tǒng) 2019-09-27 17:56:49 1616