本文介紹了使用Python來掃描指定目錄下的文件,或者匹配指定后綴和前綴的函數。步驟如下:如果要掃描指定目錄下的文件,包括子目錄,需要調用scan_files("/export/home/test/")如果要掃描指定目錄下的特定后綴的文件(比如jar包),包括子目錄,調用scan_files("/export/home/test/",postfix=".jar")如果要掃描指定目錄下的特定前綴的文件(比如test_xxx.py),包括子目錄,調用scan_
系統 2019-09-27 17:47:27 1953
Python是一門弱類型語言,很多從C/C++轉過來的朋友起初不是很適應。比如,在聲明一個函數時,不能指定參數的類型。用C做類比,那就是所有參數都是void*類型!void類型強制轉換在C++中被廣泛地認為是個壞習慣,不到萬不得已是不會使用的。Python自然沒有類型強制轉換一說了,因為它是動態語言。首先,所有對象都從Object繼承而來,其次,它有強大的內省,如果調用某個不存在的方法會有異常拋出。大多數情況,我們都不需要做參數類型栓查,除了一些特殊情況。
系統 2019-09-27 17:47:04 1953
Python程序可以處理多種方式的日期和時間。日期格式之間的轉換是一種常見計算機的雜活。Python的時間和日歷模塊,能幫助處理日期和時間。Tick是什么?時間間隔為浮點數以秒為單位的數字。在特定的時間瞬間自上午12時00分,1970年1月1日(紀元)表示,單位為秒。Python中可用的流行時間模塊,它提供功能轉換。該功能time.time()返回當前系統時間,因為上午12點,1970年1月1日(時代)。例子:#!/usr/bin/pythonimport
系統 2019-09-27 17:46:45 1953
sys模塊提供了許多函數和變量來處理Python運行時環境的不同部分.處理命令行參數在解釋器啟動后,argv列表包含了傳遞給腳本的所有參數,列表的第一個元素為腳本自身的名稱.使用sys模塊獲得腳本的參數復制代碼代碼如下:print"scriptnameis",sys.argv[0]#使用sys.argv[0]采集腳本名稱iflen(sys.argv)>1:print"thereare",len(sys.argv)-1,"arguments:"#使用len(
系統 2019-09-27 17:46:35 1953
本文較為詳細的分析了Python解釋執行的原理,對于深入理解Python可以起到一定的幫助作用。具體分析如下:首先,這里的解釋執行是相對于編譯執行而言的。我們都知道,使用C/C++之類的編譯性語言編寫的程序,是需要從源文件轉換成計算機使用的機器語言,經過鏈接器鏈接之后形成了二進制的可執行文件。運行該程序的時候,就可以把二進制程序從硬盤載入到內存中并運行。但是對于Python而言,python源碼不需要編譯成二進制代碼,它可以直接從源代碼運行程序。當我們運行
系統 2019-09-27 17:46:15 1953
set無序排序且不重復,是可變的,有add(),remove()等方法。既然是可變的,所以它不存在哈希值。基本功能包括關系測試和消除重復元素.集合對象還支持union(聯合),intersection(交集),difference(差集)和sysmmetricdifference(對稱差集)等數學運算。sets不支持indexing。frozenset是不可變的Set。set的形式是{1,2},有點像字典。set.add(1),set.update([3,
系統 2019-09-27 17:45:55 1953
dic={'key1':'value1','key2':'value2'}一、增if'key3'notindic:dic['key3']='value3'二、刪deldic['key1']#刪除鍵是'Name'的條目dic.clear()#清空字典所有條目deldic#刪除字典三、改dic['key1']='value0'#更新四、查遍歷forkey,valueindic.items():print(key,value)#同時遍歷key,valuefori
系統 2019-09-27 17:45:50 1953
本文實例講述了Python中迭代的用法,是一個非常實用的技巧。分享給大家供大家參考借鑒之用。具體分析如下:如果給定一個list或tuple,我們可以通過for循環來遍歷這個list或tuple,這種遍歷我們成為迭代(Iteration)。在Python中,迭代是通過for...in來完成的,而很多語言比如C或者Java,迭代list是通過下標完成的,比如Java代碼:for(i=0;i可以看出,Python的for循環抽象程度要高于Java的for循環,因
系統 2019-09-27 17:45:31 1953
在業務穩定性要求比較高的情況下,運維為能及時發現問題,有時需要對應用程序的日志進行實時分析,當符合某個條件時就立刻報警,而不是被動等待出問題后去解決,比如要監控nginx的$request_time和$upstream_response_time時間,分析出最耗時的請求,然后去改進代碼,這時就要對日志進行實時分析了,發現時間長的語句就要報警出來,提醒開發人員要關注,當然這是其中一個應用場景,通過這種監控方式還可以應用到任何需要判斷或分析文件的地方,所以今天
系統 2019-09-27 17:38:40 1953
前言隨著站點的增多,管理復雜性也上來了,俗話說:人多了不好帶,我發現站點多了也不好管,因為這些站點里有重要的也有不重要的,重要核心的站點當然就管理的多一些,像一些萬年都不出一次問題的,慢慢就被自己都淡忘了,冷不丁那天出個問題,還的手忙腳亂的去緊急處理,所以規范的去管理這些站點是很有必要的,今天我們就做第一步,不管大站小站,先統一把監控做起來,先不說業務情況,最起碼那個站點不能訪問了,要第一時間報出來,別等著業務方給你反饋,就顯得我們不夠專業了,那接下來我們
系統 2019-09-27 17:38:21 1953