日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
如何正確認(rèn)識(shí)Python源文件

使用Python 源文件在構(gòu)建腳本的底部,可以定義 compile 目標(biāo),Python 源文件內(nèi)在元素是 compile 運(yùn)行期間執(zhí)行的任務(wù),特別的是 py-compile 任務(wù),它負(fù)責(zé)從 src 目錄開(kāi)始,編譯所有的 Python 代碼。

神池ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書(shū)未來(lái)市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)公司的ssl證書(shū)銷(xiāo)售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18980820575(備注:SSL證書(shū)合作)期待與您的合作!

該任務(wù)會(huì)遞歸遍歷所有的子目錄,并編譯所有的 Python 模塊。腳本中沒(méi)有采用將 src 目錄硬編碼到調(diào)用之處的方式,而是在構(gòu)建腳本中定義了稱(chēng)為 src.dir 的屬性。然后,在需要使用這個(gè)目錄名的時(shí)候。

就可以通過(guò) ${src.dir} 來(lái)引用。 要運(yùn)行構(gòu)建腳本,可從 Eclipse 中打開(kāi)它。Eclipse 具有內(nèi)置的 Ant 構(gòu)建腳本編輯和瀏覽功能。Outline 視圖可以顯示出構(gòu)建腳本的結(jié)構(gòu)。在 Navigator 視圖中。

選擇該構(gòu)建腳本,用右鍵點(diǎn)擊,然后選擇“Run Ant...”。選擇 compile 目標(biāo),然后點(diǎn)擊“Run”。構(gòu)建腳本執(zhí)行過(guò)程中的輸出信息應(yīng)該顯示在 Console 視圖中,表示運(yùn)行成功。 從對(duì)上述 pydoc 目標(biāo)的解析可看出。#t#

第 7 行聲明了目標(biāo)名稱(chēng),并指出它依賴(lài)于 init 和 compile 目標(biāo)。這意味著在運(yùn)行 pydoc 目標(biāo)之前,Ant 必須保證 init 和 compile 目標(biāo)已經(jīng)運(yùn)行,如果沒(méi)有,則首先運(yùn)行這兩個(gè)目標(biāo)。

pydoc 目標(biāo)所依賴(lài)的 init 目標(biāo)在第 3 至第 5 行定義。 init 目標(biāo)僅僅創(chuàng)建了一個(gè)存放 PyDoc API 文檔文件的目錄。如前所述,要為所生成文檔的保存位置定義一個(gè)屬性,名為 pydoc.dir。

第 8 行開(kāi)始是 py-doc 任務(wù)。如前所述,您傳入生成 pydoc 過(guò)程中所使用的 PYTHONPATH 。 destdir 屬性告訴 py-doc 任務(wù)將生成的 HTML 文檔輸出到何處。 第 9 至第 11 行定義了在生成文檔的過(guò)程中應(yīng)該處理哪些 Python 源文件。文件集是 Ant 腳本中通用的結(jié)構(gòu)。

可用于定義所操作的一組文件。這是一種很強(qiáng)大的特性,它使您能夠通過(guò)名字模式、布爾邏輯和文件屬性來(lái)選擇所要操作的文件。Ant 文檔中有這方面的完整描述。本例中遞歸選擇了“src”目錄下的所有文件。

Python 源文件中具有標(biāo)準(zhǔn)的單元測(cè)試框架(從 Python 2.3 開(kāi)始。在 Python 2.2 中這只是可選模塊),與 Java jUnit 框架十分類(lèi)似。測(cè)試用例的結(jié)構(gòu)與 jUnit 采用相同的方式。每一個(gè)待測(cè)試的類(lèi)和模塊通常都具有自己的測(cè)試類(lèi)。測(cè)試類(lèi)中包含測(cè)試裝置(fixture)。

它們?cè)?setUp 函數(shù)中初始化。每一個(gè)測(cè)試都編寫(xiě)為測(cè)試類(lèi)中的一個(gè)獨(dú)立的測(cè)試函數(shù)。unittest 框架會(huì)在測(cè)試函數(shù)之間循環(huán)往復(fù),先調(diào)用 setUp 、再測(cè)試函數(shù)、然后清除( tearDown )測(cè)試函數(shù)。請(qǐng)參閱清單 4 中的樣例。

 
 
  1. import unittest  
  2. from pprint import pprint  
  3. import feedparser  
  4. class FeedparserTest(unittest.TestCase):  
  5.     """  
  6.     A test class for the feedparser module.  
  7.     """  
  8.       
  9.     def setUp(self):  
  10.         """  
  11.         set up data used in the tests.  
  12.         setUp is called before each test function execution.  
  13.         """  
  14.         self.developerWorksUrl = "testData/developerworks.rss"         
  15.     def testParse09Rss(self):  
  16.         """  
  17.         Test a successful run of the parse function for a  
  18.         0.91 RSS feed.  
  19.         """  
  20.         print "FeedparserTest.testParse09RSS()"  
  21.           
  22.         result = feedparser.parse(self.developerWorksUrl)  
  23.         pprint(result)  
  24.         self.assertEqual(0, result['bozo'])  
  25.           
  26.         self.assert_(result is not None)  
  27.         channel = result['channel']  
  28.         self.assert_(channel is not None)  
  29.         chanDesc = channel['description']  
  30.         self.assertEqual(u'The latest content from IBM developerWorks',  
  31.             chanDesc)  
  32.           
  33.         items = result['items']  
  34.         self.assert_(items is not None)  
  35.         self.assert_(len(items)> 3)  
  36.         firstItem = items[0]  
  37.         title = firstItem['title']  
  38.         self.assertEqual(u'Build installation packages with   
  39.             solution installation and deployment technologies',  
  40.             title)  
  41.     
  42.     def tearDown(self):  
  43.         """  
  44.         tear down any data used in tests  
  45.         tearDown is called after each test function execution.  
  46.         """  
  47.         pass  
  48.                   
  49. if __name__ == '__main__':  
  50.     unittest.main()  

上述清單是實(shí)現(xiàn) feedparser 模塊基本測(cè)試功能的測(cè)試類(lèi)。完整的測(cè)試類(lèi)見(jiàn) feedParserTest 項(xiàng)目下的 src/feedparserTest/FeedparserTest.py。step 函數(shù)負(fù)責(zé)準(zhǔn)備整個(gè)測(cè)試過(guò)程中需要使用的測(cè)試裝置,在本例中只有測(cè)試用的 RSS 文件的目錄。

測(cè)試函數(shù)將對(duì)其進(jìn)行解析。testParse09Rss 是真正的測(cè)試函數(shù)。Python 源文件這個(gè)函數(shù)調(diào)用 feedparser.parse 函數(shù),傳遞測(cè)試用的 RSS 文件,輸出解析結(jié)果,并通過(guò) TestCase 類(lèi)的 assert 函數(shù)執(zhí)行基本的檢查統(tǒng)作。

如果任何 assert 的求值結(jié)果不是真,或是在執(zhí)行過(guò)程中拋出任何異常,unittest 就會(huì)報(bào)告一次測(cè)試失敗或錯(cuò)誤。***的兩行負(fù)責(zé)在這個(gè)測(cè)試類(lèi)內(nèi)部運(yùn)行測(cè)試,方法是直接運(yùn)行該模塊即可。


分享名稱(chēng):如何正確認(rèn)識(shí)Python源文件
當(dāng)前URL:http://www.5511xx.com/article/djcppgj.html