Time of Update: 2017-02-27
儘管使用者通常將 Python 看作是一個過程性和物件導向語言,但它實際上包含了實現完整函數編程所需的每樣事物。本文討論了函數編程的常規概念,並說明了在 Python 中實現函數技術的方法。我們最好從最難的問題開始:“到底什麼是函數編程 (FP)?”一個答案可能會說 FP 就是您在使用例如
Time of Update: 2017-02-27
狀態機器從理論上說是幾乎與電腦和編程相關的每件事的基礎。從實用角度來看,狀態機器還有助於解決許多常見問題(特別適用於 Python 程式員)。本文中,David Mertz 討論了何時以及如何使用 Python 編碼狀態機器的實際例子。什麼是 Python?請簡要回顧本專欄中的 第一篇文章 ,Python 是由 Guido van Rossum 開發的免費進階解釋型語言。其文法簡單易懂,而其物件導向的語義功能強大(但又靈活)。Python
Time of Update: 2017-02-27
開始在 Python 中使用 XML 的一個主要要素是排列出所有可用模組的可比效能力。在他的新 Python 專欄“可愛的 Python”的第一部分中,David Mertz 簡要描述了最流行和實用的關於 XML 的 Python 模組,並指出可以下載的單獨模組以及可供閱讀的參考資料。本文有助於確定哪些模組最適合特定任務。在許多情況下,Python 是使用 XML 文檔的理想語言。像 Perl、REBOL、REXX 和 TCL
Time of Update: 2017-02-27
與大多數其它程式設計語言相比,Python 的一大優點就是其強大的運行時動態能力。感謝方便的 reload() 函數,我們可以編寫持續啟動並執行程式,但它可以在進程運行期間裝入經過修改的組件(對於那些持續已耗用時間至關重要的服務來說, 相當有用)。b本文在 David 以前的文章中討論的對 Txt2Html 前端的某些增強基礎上,說明了運行時程式修改。特別是,我們的樣本程式將對網際網路上 Txt2Html 轉換庫的新版本進行後台檢查,
Time of Update: 2017-02-27
與其它幾種流行的指令碼語言一樣,Python 是一種用於瀏覽和處理文本資料的優秀工具。本文為 Python 的初學者概述了 Python 的文本處理工具。文章說明了規則運算式的一些常規概念,並提供了處理文本時,什麼情況下應使用(或不使用)規則運算式的建議。什麼是 Python?Python 是由 Guido van Rossum 開發的、可免費獲得的、非常進階的解釋型語言。其文法簡單易懂,而其物件導向的語義功能強大(但又靈活)。Python 可以廣泛使用並具有高度的可移植性。字串 --
Time of Update: 2017-02-27
本文中,David Mertz 更為詳細地說明了已在 上一篇專欄文章中討論過的 Python 的進階 xml.dom模組的使用。以闡明代碼樣本及解釋如何編碼加到完整 XML文檔處理系統中的若干元素來說明 xml.dom 的工作方法。什麼是 Python?什麼是 XML?Python 是由 Guido van Rossum 開發的可免費獲得的進階解釋型語言。其文法簡單易懂,而其物件導向的語義功能強大,卻又靈活隨意。Python 幾乎適用於每一種電腦平台,並且在平台間具有很強的可移植性。XML 是&
Time of Update: 2017-02-27
某一類 Python應用程式最好使用互動式使用者介面,這樣可以消除圖形環境的系統開銷或複雜性。互動式文字模式程式(在Linux/UNIX 中),例如封裝在 Python 的標準 curses模組中的 ncurses 庫,正是您所需要的。本文中,DavidMertz 討論了在 Python 中 curses 的用法。他使用從前端到 Txt2Html程式的樣本原始碼闡述了 curses 環境。curses 庫 ( ncurses ) 提供了控制字元螢幕的獨立於終端的方法。curses
Time of Update: 2017-02-27
在本期文章中,David 向您介紹了自然語言工具包(Natural Language Toolkit),它是一個將學術語言技術應用於文本資料集的 Python 庫。稱為“文本處理”的程式設計是其準系統;更深入的是專門用於研究自然語言的文法以及語義分析的能力。鄙人並非見多識廣,雖然寫過很多關於 文本處理 方面的東西(例如,一本書),但是,對我來說, 語言處理(linguistic processing)
Time of Update: 2017-02-27
David Mertz 創作的 可愛的 Python的第一、第二部分概述了在 Python 中使用XML。然而,在那些最初的文章出現後,Python 中的 XML工具有了很大的發展。不幸的是,這些改進中的大多數並不向後相容。在這個特別部分中,重溫了作者先前對XML 工具的討論,並提供最新的程式碼範例。在許多情況下,Python 是使用 XML 文檔的理想語言。像 Perl、REBOL、REXX 和 TCL
Time of Update: 2017-02-27
David Mertz 採訪了 JPython 和 Python for .NET 的開發人員 Mark Hammond、Finn Bock 和 Barry Warsaw。他從 Mark 那裡瞭解到一些有關微軟開發的最新獨家新聞內幕(當然所有內容都在保密合約限制內)並從 Finn 和 Barry 那裡瞭解到有關 JPython 和他們將要發布的 Jython 項目的一些資訊。儘管 Python 通常等同於 CPython,但它的規範曾在其它地方實現過多次,包括在用於 Java 和 .NET
Time of Update: 2017-02-27
使用基本的 Python 模組,可以編寫指令碼來與 Web 網站互動,但是如果沒有必要的話,那麼您就不希望這樣做。Python 2.x 中的模組 urllib 和 urllib2,以及 Python 3.0 中的統一的 urllib.* 子包,可以在 URL 的末尾擷取資源。然而,當您希望與 Web 頁面中找到的內容進行某種比較複雜的互動時,您需要使用 mechanize 庫。在自動化 Web scrap 或使用者與 Web 網站的互動類比中,最大的困難之一就是伺服器使用 cookies
Time of Update: 2017-02-27
Python 書籍已經開始穩步佔據著書店書架空間的更大份額。自從我開始發表這些綜述以來,現可稱為“廢品”的有關 Python 的書籍數量可能已經是原來的四倍。而這還不包括許多在 Web 上發布的有關 Python 的出色的電子文檔(包括一些未經刪節的書籍)。本文談及的幾本 Python 書籍已在前幾個月就放到了我的書架上。與 Web 相關的書籍關於 Python 和 Web 的兩本書我最近看到兩本書:Holden 和 Beazley 合著的 Python Web
Time of Update: 2017-02-27
開始之前自從九個月前,我的 最近書籍摘要發表以來,又有一些新的 Python 書籍出版了,還有一些我先前沒有機會評論的其它書籍送到我的書桌上。我沒有機會評論所有希望評論的書,但是在這兩個部分中所討論的每一本書,您都可以考慮購買。在過去的一年中,更多的書籍將加入 Python 的書架。肯定會有一些書名我沒有聽說過;但是這裡有一些似乎很不錯的書。Python 堅定而有才華的 Usenet 評論家 Alex Martelli 已經明確約定為 O'Reilly 編寫兩本單獨的書籍 ― 一本標題為
Time of Update: 2017-02-27
本系列 第一期文章 討論了序列和比較。本期文章將以這些主題為基礎展開討論。在大多數物件導向語言中,方法和屬性幾乎相同(但並非完全相同)。兩者都可以附加到類和/或執行個體。除了實現細節外,存在一個關鍵區別:當附加到對象時,您可以調用 方法 發起動作和計算;而屬性 僅具有一些可被檢索(或者修改)的值。對於某些語言(例如 Java™ 語言),這可能是惟一的區別。屬性和方法之間涇渭分明。Java 語言通常主要關注封裝和資料隱藏;因此鼓勵使用 “setters” 和 &
Time of Update: 2017-02-27
在本文中,我要討論在最近幾個 Python 版本中增加的不那麼令人信服的特性, 我將分析哪些改進具有真正的價值,哪些特性只是不必要地增加了複雜性。我希望向所有並非一直使用 Python 的程式員指出真正具有價值的東西。這包括使用其他語言的程式員以及只將編程當做副業的科學家。當遇到一些難題時,我會提供解決方案。不可比較的麻煩在 Python 2.0 和 Python 2.1
Time of Update: 2017-02-27
Python 程式員最近隨著版本 2.0 的發行獲得了一個嶄新的工具。Python 2.0 是在以前 Python 版本的長處上構建的,同時添加了許多新的便利和能力。本文提供了作者對 Python 最新版本的印象,以及有關如何有效利用它的一些技巧。於 2000 年 10 月發行的 Python 2.0 引入了許多新的語言特性,並包括一些新的標準模組。負責人 van Rossum 的一個美德 -- 可能就是為他在 Python 社區中贏得“終身慈善統治者
Time of Update: 2017-02-27
當大多數程式員談到 ”Python“ 時,他們可能想到的是有時稱為 ”CPython“(因為它是以 C 實現的)的這種特定實現。但 Python 作為一種語言規範,已隨著 Guido van Rossum 的參考實現的演變而實現了多次。本文包含對兩種非標準 Python -- Stackless 和 Vyper -- 創始人帶注釋的採訪。developWorks 網站上的 Linux 專區是有關 Linux、Linux 資源和 Linux
Time of Update: 2017-02-27
Python 是一種簡潔優美的指令碼語言,它的諸多優點使它在完成某些任務時輕鬆自如。本文通過幾個具體的例子闡明了這一點。關於PythonPython 是一種簡潔優美的程式設計語言,它具有物件導向的特徵,較好的粘合其他語言的能力及跨平台性。然而我認為同樣重要的是, 它簡單易學,書寫代碼簡潔快速。此外,Python 提供了較多的模快,包含了相當多的功能,所以只要有一個可行的想法,那麼用 Python 解決起來會是比較容易的。下面幾個例子都源於我遇到的一些實際問題。藉助於
Time of Update: 2017-02-27
本文介紹了 Txt2Html,由 David 建立的公用域工作項目,用於說明 Python 的編程技巧。Txt2Html 是“基於 Web 的過濾代理”-- 一種替使用者讀取基於 Web 的文檔,然後將修改過的頁面顯示到使用者瀏覽器的程式。為了使這成為可能,Txt2Html 以 CGI 程式的形式運行,查詢外部 Web 資源的資訊,並利用規則運算式。David 將為您逐步解釋、說明和示範這些多種用途的子任務。在撰寫本 developerWorks
Time of Update: 2017-02-27
David Mertz 介紹了 6 種 Python 整合式開發環境,並比較了其特性、平台和穩定性。他發現 -- 或許只是無意中對開放原始碼模組的測試 -- 免費產品似乎都比商業產品優秀。前幾周,我有幸對一些 Python 開發環境做了一次全新的試用(或者說是首次嘗試)。這樣很可能會涉及從實際嘗試“最佳文字編輯器,附加命令列”方法到 Python 開發,而對於更複雜的 Python 整合式開發環境 (IDE) 在 Python 討論網站上有詳盡的內容。對 Python