時隔已久,再次冒煙,自動化測試工作仍在繼續(xù),自動化測試中的數(shù)據(jù)驅(qū)動技術(shù)尤為重要,不然咋去實現(xiàn)數(shù)據(jù)分離呢,對吧,這里就簡單介紹下與傳統(tǒng)unittest自動化測試框架匹配的DDT數(shù)據(jù)驅(qū)動技術(shù)。話不多說,先擼一波源碼,其實整體代碼并不多#-*-coding:utf-8-*-#ThisfileisapartofDDT(https://github.com/txels/ddt)#Copyright2012-2015CarlesBarrobésandDDTcontri
系統(tǒng) 2019-09-27 17:46:08 1619
filter函數(shù):filter()函數(shù)可以對序列做過濾處理,就是說可以使用一個自定的函數(shù)過濾一個序列,把序列的每一項傳到自定義的過濾函數(shù)里處理,并返回結(jié)果做過濾。最終一次性返回過濾后的結(jié)果。filter()函數(shù)有兩個參數(shù):第一個,自定函數(shù)名,必須的第二個,需要過濾的列,也是必須的DEMO需求,過濾大于5小于10的數(shù):復(fù)制代碼代碼如下:#coding=utf8#定義大于5小于10的函數(shù)defguolvhanshu(num):ifnum>5andnum<10:
系統(tǒng) 2019-09-27 17:46:02 1619
本文以實例形式較為詳細的講述了Python中多線程的用法,在Python程序設(shè)計中有著比較廣泛的應(yīng)用。分享給大家供大家參考之用。具體分析如下:python中關(guān)于多線程的操作可以使用thread和threading模塊來實現(xiàn),其中thread模塊在Py3中已經(jīng)改名為_thread,不再推薦使用。而threading模塊是在thread之上進行了封裝,也是推薦使用的多線程模塊,本文主要基于threading模塊進行介紹。在某些版本中thread模塊可能不存在,
系統(tǒng) 2019-09-27 17:46:00 1619
Python中將數(shù)字格式化時,有些時候需要將數(shù)字格式化,為了顯示美觀,需要補零。今天在寫代碼時,看見別人的奇怪寫法,覺得有必要在這里把Python更好的寫法重寫一下。看到的別人的代碼foriinrange(99):num_str=str(i)iflen(num_str)>1:num_str='0'+str(i)print(num_str)看到這段代碼,我的三觀被刷新了。如果補零比較多,確實代碼的行數(shù)可觀。常見和不常見的格式化補零方法foriinrange(
系統(tǒng) 2019-09-27 17:45:59 1619
Python引入了一個機制:引用計數(shù)。引用計數(shù)python內(nèi)部使用引用計數(shù),來保持追蹤內(nèi)存中的對象,Python內(nèi)部記錄了對象有多少個引用,即引用計數(shù),當(dāng)對象被創(chuàng)建時就創(chuàng)建了一個引用計數(shù),當(dāng)對象不再需要時,這個對象的引用計數(shù)為0時,它被垃圾回收。總結(jié)一下對象會在一下情況下引用計數(shù)加1:1.對象被創(chuàng)建:x=42.另外的別人被創(chuàng)建:y=x3.被作為參數(shù)傳遞給函數(shù):foo(x)4.作為容器對象的一個元素:a=[1,x,'33']引用計數(shù)減少情況1.一個本地引用離
系統(tǒng) 2019-09-27 17:45:58 1619
listpython的列表內(nèi)部實現(xiàn)是數(shù)組(具體實現(xiàn)要看解析器,CPython的實現(xiàn)),因此就有數(shù)組的特點。超過容量會增加更多的容量,set,get是O(1),但del,insert,in的性能是O(n)。具體的看下表,'n’是容器中當(dāng)前的元素數(shù),'k’需要操作的元素個數(shù)OperationAverageCaseAmortizedWorstCaseCopyO(n)O(n)Append[1]O(1)O(1)InsertO(n)O(n)GetItemO(1)O(1
系統(tǒng) 2019-09-27 17:45:52 1619
命令行方式運行Python腳本在這個章節(jié)中,我們將寫一些簡單的數(shù)據(jù)庫管理腳本。在此之前讓我們來復(fù)習(xí)一下如何通過命令行方式執(zhí)行Python腳本.如果Linux或者OSX的操作系統(tǒng),需要有執(zhí)行腳本的權(quán)限。例如:chmoda+xscript.py該腳本有個指向使用解釋器的命令行。再腳本賦予執(zhí)行權(quán)限后就可以通過命令行執(zhí)行,就像這樣:likethis:./script.py然而,在Windows系統(tǒng)上這樣做是不行的,你必須提供Python解釋器作為必選參數(shù),如:復(fù)制
系統(tǒng) 2019-09-27 17:45:52 1619
并發(fā)與鎖多個線程共享數(shù)據(jù)的時候,如果數(shù)據(jù)不進行保護,那么可能出現(xiàn)數(shù)據(jù)不一致現(xiàn)象,使用鎖,信號量、條件鎖互斥鎖1.互斥鎖,是使用一把鎖把代碼保護起來,以犧牲性能換取代碼的安全性,那么Rlock后必須要relase解鎖不然將會失去多線程程序的優(yōu)勢2.互斥鎖的基本使用規(guī)則:importthreading#聲明互斥鎖lock=threading.Rlock();defhandle(sid):#功能實現(xiàn)代碼lock.acquire()#加鎖#writercodein
系統(tǒng) 2019-09-27 17:45:51 1619
學(xué)習(xí)python少不了寫爬蟲,不僅能以點帶面地學(xué)習(xí)、練習(xí)使用python,爬蟲本身也是有用且有趣的,大量重復(fù)性的下載、統(tǒng)計工作完全可以寫一個爬蟲程序完成。用python寫爬蟲需要python的基礎(chǔ)知識、涉及網(wǎng)絡(luò)的幾個模塊、正則表達式、文件操作等知識。昨天在網(wǎng)上學(xué)習(xí)了一下,寫了一個爬蟲自動下載「糗事百科」里面的圖片。源代碼如下:復(fù)制代碼代碼如下:#-*-coding:utf-8-*-#上面那句讓代碼里支持中文#------------------------
系統(tǒng) 2019-09-27 17:45:42 1619
裝飾器:概念:把一個函數(shù)當(dāng)作參數(shù)傳遞給一個函數(shù),返回一個替代版的函數(shù)本質(zhì)上就是一個返回函數(shù)的函數(shù)“在不改變原函數(shù)的基礎(chǔ)上,給函數(shù)增加功能”@符號,那只是一個簡短的方式來生成一個被裝飾的函數(shù)defpaint(func):參數(shù)是一個函數(shù)definner():print('#########')這個的整個部分就都是裝飾器func()returninner@paint這個就是函數(shù)戴帽子,也就是裝飾器deffunc():print('haveaniceday!!')
系統(tǒng) 2019-09-27 17:45:41 1619