作為一種極其簡單的編程語言,Python目前成為了最炙手可熱的幾種語言之一。它不僅簡單易學,而且它還為用戶提供了各種各樣的模塊,功能強大,無所不能。有利必有弊,學習Python同樣有困擾,其中之一就是Python的各種模塊的各種內置函數太為繁雜,不好記憶。俗話說的好“好記性不如爛筆頭”,既然不好記憶,不如將自己經常遇到的Python模塊和相應的函數用法時常進行總結收錄,作為自己的一個查詢工具,也是一個不錯的學習方式。相信經過幾次查詢,這些模塊和函數自然而然地就銘記在心了。學習重在積累,有了量變才有質變。
1. 時間模塊——datetime
Python提供了很多種時間模塊,比如time、datetime等。time模塊提供的接口與C標准庫time.h基本一致。相比於time模塊,datetime模塊的接口則更直觀、更容易調用。
datetime 模塊下的類:
- datetime.date: 表示日期的類,常用的屬性有year, month, day;
- datetime.time: 表示時間的類,常用的屬性有hour, minute, second, microsecond, tzinfo;
- datetime.datetime: 表示日期時間,常用的屬性有year, month, day, hour, minute, second, microsecond, tzinfo;
- datetime.deltatime: 表示時間間隔,即兩個時間點之間的長度;
- datetime.tzinfo: 與時區有關的相關信息。
除了5種類以外,datetime模塊還定義了兩個常量:datetime.MINYEAR和datetime.MAXYEAR,分別表示datetime所能表示的最小、最大年份。其中,MINYEAR = 1,MAXYEAR = 9999。
其中在這5中類里邊,真正經常使用的類是date、time和datetime類,deltatime 和 tzinfo 類至今也沒有用到過,可能對於我是“弱需求”吧。
datetime常用用法示例:
1. 顯示今天的日期:
import time from datetime import date today = date.today()
print today
顯示結果:datetime.date(2015, 8, 21)
2. 按不同的格式輸出日期:
import time
from datetime import date
today=date.today() today.isoformat()
顯示結果:'2015-08-21' today.strftime("%d/%m/%y")
顯示結果:'21/08/15' today.strftime("%d-%m-%y")
顯示結果:‘21-08-15’ today.strftime("%A %d. %B %Y")
顯示結果:'Friday 21. August 2015'
3. 獲取當前時間戳,反解時間戳
from datetime import *
import time
print time.time()
顯示結果:1440172174.678
date.fromtimestamp(time.time())
顯示結果:datetime.date(2015, 8, 21)
2. 文件目錄操作模塊——os
舉兩個常用的文件目錄操作。
比如文件目錄為:
C:\Users\poll\Desktop\aaa--------dsa.png
--------qq.jpg
--------bbb(文件夾)-------ccc.txt
1. 返回指定文件夾下的所有文件名(注:包括當前目錄下的文件夾名,但是不包含該文件夾下的子文件名)
import os path = 'C:\\Users\\poll\\Desktop\\aaa' files_list = os.listdir(path)
顯示結果:
bbb
dsa.png
qq.jpg
2. 返回指定文件夾下的所有文件名(注:包括子文件夾內的子文件,不包含任何文件夾的名字)
import os import os.path path = 'C:\\Users\\poll\\Desktop\\aaa' files_path = [] for root, dirs, files in os.walk(path): for file in files: files_path.append(os.path.join(root, file)) print os.path.join(root, file)
顯示結果:
C:\Users\poll\Desktop\aaa\dsa.png
C:\Users\poll\Desktop\aaa\qq.jpg
C:\Users\poll\Desktop\aaa\bbb\ccc.txt
附:os.path函數列表: