模塊之time、calendar、datatime、sys、os、random、json、pickle

time:時間

'''
時間戳(timestamp):time.time()
延遲線程的運行:time.sleep(secs)
(指定時間戳下的)當前時區時間:time.localtime([secs])
(指定時間戳下的)格林威治時間:time.gmtime([secs])
(指定時間元組下的)格式化時間:time.strftime(fmt[,tupletime])
'''
'''
%y 兩位數的年份表示(00-99%Y 四位數的年份表示(000-9999%m 月份(01-12%d 月內中的一天(0-31%H 24小時制小時數(0-23%I 12小時制小時數(01-12%M 分鐘數(00=59%S 秒(00-59%a 本地簡化星期名稱
%A 本地完整星期名稱
%b 本地簡化的月份名稱
%B 本地完整的月份名稱
%c 本地相應的日期表示和時間表示
%j 年內的一天(001-366%p 本地A.M.或P.M.的等價符
%U 一年中的星期數(00-53)星期天爲星期的開始
%w 星期(0-6),星期天爲星期的開始
%W 一年中的星期數(00-53)星期一爲星期的開始
%x 本地相應的日期表示
%X 本地相應的時間表示
%Z 當前時區的名稱
%% %號自己
'''

calendar:日曆

'''
判斷閏年:calendar.isleap(year)
查看某年某月日曆:calendar.month(year, mouth)
查看某年某月起始星期與當月天數:calendar.monthrange(year, mouth)
查看某年某月某日是星期幾:calendar.weekday(year, month, day)
'''

datatime:能夠運算的時間

'''
當前時間:datetime.datetime.now()
昨天:datetime.datetime.now() + datetime.timedelta(days=-1)
修改時間:datatime_obj.replace([...])
格式化時間戳:datetime.date.fromtimestamp(timestamp)
'''

sys:系統

'''
命令行參數List,第一個元素是程序自己路徑:sys.argv
退出程序,正常退出時exit(0):sys.exit(n) 
獲取Python解釋程序的版本信息:sys.version
最大int值:sys.maxsize | sys.maxint
環境變量:sys.path
操做系統平臺名稱:sys.platform
'''

os:操做系統

'''
生成單級目錄:os.mkdir('dirname')
生成多層目錄:os.makedirs('dirname1/.../dirnamen2')
重命名:os.rename("oldname","newname") 
工做目錄:os.getcwd()
刪除單層空目錄:os.rmdir('dirname')
移除多層空目錄:os.removedirs('dirname1/.../dirnamen') 
列舉目錄下全部資源:os.listdir('dirname')
路徑分隔符:os.sep
行終止符:os.linesep
文件分隔符:os.pathsep
操做系統名:os.name
操做系統環境變量:os.environ
執行shell腳本:os.system() 
'''

os.path:系統路徑操做

'''
執行文件的當前路徑:__file__
返回path規範化的絕對路徑:os.path.abspath(path)  
將path分割成目錄和文件名二元組返回:os.path.split(path)  
上一級目錄:os.path.dirname(path) 
最後一級名稱:os.path.basename(path)
指定路徑是否存在:os.path.exists(path)
是不是絕對路徑:os.path.isabs(path)
是不是文件:os.path.isfile(path)
是不是路徑:os.path.isdir(path) 
路徑拼接:os.path.join(path1[, path2[, ...]])
最後存取時間:os.path.getatime(path)
最後修改時間:os.path.getmtime(path)
目標大小:os.path.getsize(path)
'''
'''
normcase函數
在Linux和Mac平臺上,該函數會原樣返回path,在windows平臺上會將路徑中全部字符轉換爲小寫,並將全部斜槓轉換爲飯斜槓。
>>> os.path.normcase('c:/windows\\system32\\')   
'c:\\windows\\system32\\'   
   
normpath函數
規範化路徑,如..和/
>>> os.path.normpath('c://windows\\System32\\../Temp/')   
'c:\\windows\\Temp'   

>>> a='/Users/jieli/test1/\\\a1/\\\\aa.py/../..'
>>> print(os.path.normpath(a))
/Users/jieli/test1
'''

random:隨機數

'''
(0, 1):random.random()
[1, 10]:random.randint(1, 10)
[1, 10):random.randrange(1, 10)
(1, 10):random.uniform(1, 10)
單例集合隨機選擇1個:random.choice(item)
單例集合隨機選擇n個:random.sample(item, n)
洗牌單列集合:random.shuffle(item)
'''

json:序列化

# json: {} 與 [] 嵌套的數據
# 注:json中的字符串必須所有用""來標識
'''
序列化:對象 => 字符串
序列化成字符串:json.dumps(json_obj)
序列化字符串到文件中:json.dump(json_obj, write_file)

# 注:字符形式操做
反序列化成對象:json.loads(json_str)
從文件讀流中反序列化成對象:json.load(read_file)
'''

pickle:序列化

'''
序列化:對象 => 字符串
序列化成字符串:pickle.dumps(obj)
序列化字符串到文件中:pickle.dump(obj, write_bytes_file)

# 注:字節形式操做
反序列化成對象:pickle.loads(bytes_str)
從文件讀流中反序列化成對象:pickle.load(read_bytes_file)
'''
相關文章
相關標籤/搜索