新聞中心
Python 在近年來的受歡迎程度劇增,部分原因在于該語言非常靈活,同時功能非常強大。Python 可用于系統(tǒng)管理、Web 開發(fā)、GUI 編程、科學計算等等。

創(chuàng)新互聯(lián)為您提適合企業(yè)的網(wǎng)站設計?讓您的網(wǎng)站在搜索引擎具有高度排名,讓您的網(wǎng)站具備超強的網(wǎng)絡競爭力!結合企業(yè)自身,進行網(wǎng)站設計及把握,最后結合企業(yè)文化和具體宗旨等,才能創(chuàng)作出一份性化解決方案。從網(wǎng)站策劃到成都網(wǎng)站制作、網(wǎng)站設計、外貿(mào)網(wǎng)站建設, 我們的網(wǎng)頁設計師為您提供的解決方案。
Python 的這種日益流行性意味著,對于目前使用其他編程語言的開發(fā)人員,除了使用他們最喜歡的語言之外,他們還可以采用 Python 來完成某些項目。 過程式編程當然有其用武之地,并且可能是解決某個問題的高度有效的方法。在非常基本的層次上,過程式編程可定義為指令的列表。
Bash 和 PHP 通常就是以這樣的方式編寫的。然而由于 Python 的流行,對于作為 Web 開發(fā)人員或系統(tǒng)管理員的 PHP 和 Bash 腳本編寫人員,他們正陷入必須同時學習面向?qū)ο蟮木幊毯?Python 的境地。 面向?qū)ο筮@個概念很難一次性地掌握,因此本文采用過程式 Bash 和 PHP 腳本,并首先將它們轉(zhuǎn)換為過程式 Python。作為最后一步。
它們將轉(zhuǎn)換為面向?qū)ο蟮?Python 這個終結目標。本文在結束時將簡略討論一下面向?qū)ο蟮?Python 的一些優(yōu)點,然后在最后討論一些可能更適合采用過程或函數(shù)式編程的一些不利場景。到本文結束時,Bash 或 PHP 程序員應該能夠毫無畏懼地一頭扎進面向?qū)ο蟮?Python 項目。 #t#
如果您以前沒有聽說過函數(shù)式編程,我強烈建議您閱讀參考資料部分中的一些有關函數(shù)式編程的文章。不過簡而言之,可以將函數(shù)式編程描述為“分發(fā)函數(shù)”。通常,與面向?qū)ο蟮木幊滔啾取?/p>
函數(shù)式編程是表達某個想法的更簡潔和更清楚的方法。 采用 PHP 和 Bash 編寫磁盤監(jiān)視函數(shù)雖然 PHP 主要是為了在瀏覽器中運行,但是也可以通過 exec 函數(shù)執(zhí)行系統(tǒng)調(diào)用。
采用 PHP 編寫的第一個示例將捕獲 Shell 命令“df –h”的輸出,將輸出放在一個數(shù)組中,然后根據(jù)一個正則表達式檢查輸出的每一行。如果該行與正則表達式匹配,則打印該行。如果您希望從主目錄運行此示例,只需將此腳本命名為 index.php,并將其放在 Apache/mod_php 服務器的對外服務
- //Analyzes disk usage
- //Takes regex pattern and message
- function disk_space( $pattern="/2[0-9]%/", $message="CAPACITY WARNING:" )
- {
- exec(escapeshellcmd("df -h"),$output_lines,$return_value);
- foreach ($output_lines as $output) {
- if (preg_match( $pattern, $output ))
- echo "$message $output
/>";- }
- }
- disk_space()
- ?>
查看該代碼,可以看到正則表達式模式被設置為匹配某個包含 20-29% 的行??梢匀菀椎匦薷拇四J揭赃m應其他標志,例如 90-99%,因為 20% 是非常低的磁盤容量。 下面讓我們看一下如何在 Bash 函數(shù)中完成同樣的事情。
在 Bash 中,該問題要容易解決得多,因為您實際上是在處理系統(tǒng)調(diào)用。在此示例中,您甚至不需要使用數(shù)組或正則表達式庫,因為使用到 grep 的管道容易多了。不過,在 Bash 中設置函數(shù)的缺省參數(shù)始終有點麻煩。
分享題目:探秘不同尋常的Python程序
當前地址:http://fisionsoft.com.cn/article/dpppiji.html


咨詢
建站咨詢
