1. 程式人生 > >16-Python-常用模塊

16-Python-常用模塊

處理器 轉換 python代碼 格式 har 常用模塊 別名 操作 orm

1、模塊的定義

模塊:用來從邏輯上組織python代碼(變量、函數、類、邏輯:實現一個功能),本質就是.py文件(例如文件名:test.py,對應的模塊名則為test)。
包:用來從邏輯上組織模塊,本質就是一個目錄(必須帶有一個__init__.py文件)
import模塊的本質:導入模塊的本質就是把python文件解釋一遍。
import包的本質:導入包的本質就是解釋包下面的__init__.py文件。
 1 import module_druid  # 實質是把module_druid中的所有代碼都解釋了(當前程序中執行)一便,然後賦值給了module_druid。
 2 
 3 print
(module_druid.name) # 調用模塊中變量的方法。該方法需要加模塊名名。 4 5 module_druid.func1() # 調用模塊中的方法 6 7 print("華麗的分隔符".center(30, "~")) 8 9 from module_druid import name, func1 # 實質僅是把module_druid模塊中的name變量,func1()放到當前程序中執行,而不是全部。 10 11 print(name) # 該方法不需要再加模塊名 12 func1() # 該方法不需要再加模塊名 13 14 print("華麗的分隔符
".center(30, "~")) 15 16 from module_druid import * # 導入模塊中所有的代碼,在當前程序中執行。不建議這麽使用,因為如果友重復的方法,會導致當前方法覆蓋導入模塊的方法。 17 18 from module_druid import func2 as druid_func2 # 取別名,避免重復 19 druid_func2() 20 21 print("華麗的分隔符".center(30, "~"))

2、time、datetime模塊

2.1、 模塊的語法

 1 import time
 2 
 3 
 4 print(time.clock())  #
返回處理器時間,3.3開始已廢棄 , 改成了time.process_time()測量處理器運算時間,不包括sleep時間,不穩定,mac上測不出來 5 print(time.altzone) # 返回與utc時間的時間差,以秒計算\ 6 print(time.asctime()) # 返回時間格式"Fri Aug 19 11:14:16 2016", 7 print(time.localtime()) # 返回本地時間 的struct time對象格式 8 print(time.gmtime(time.time()-800000)) # 返回utc時間的struc時間對象格式 9 10 print(time.asctime(time.localtime())) # 返回時間格式"Fri Aug 19 11:14:16 2016", 11 print(time.ctime()) # 返回Fri Aug 19 12:38:29 2016 格式, 同上 12 13 14 # 日期字符串 轉成 時間戳 15 string_2_struct = time.strptime("2016/05/22", "%Y/%m/%d") # 將日期字符串 轉成 struct時間對象格式 16 print(string_2_struct) 17 18 struct_2_stamp = time.mktime(string_2_struct) # 將struct時間對象轉成時間戳 19 print(struct_2_stamp) 20 21 22 # 將時間戳轉為字符串格式 23 print(time.gmtime(time.time()-86640)) # 將utc時間戳轉換成struct_time格式 24 print(time.strftime("%Y-%m-%d %H:%M:%S", time.gmtime())) # 將utc struct_time格式轉成指定的字符串格式 25 26 27 #時間加減 28 import datetime 29 30 print(datetime.datetime.now()) # 返回 2016-08-19 12:47:03.941925 31 print(datetime.date.fromtimestamp(time.time())) # 時間戳直接轉成日期格式 2016-08-19 32 print(datetime.datetime.now()) 33 print(datetime.datetime.now() + datetime.timedelta(3)) # 當前時間+3天 34 print(datetime.datetime.now() + datetime.timedelta(-3)) # 當前時間-3天 35 print(datetime.datetime.now() + datetime.timedelta(hours=3)) # 當前時間+3小時 36 print(datetime.datetime.now() + datetime.timedelta(minutes=30)) # 當前時間+30分 37 38 39 c_time = datetime.datetime.now() 40 print(c_time.replace(minute=3, hour=2)) # 時間替換

2.2、 參數解釋     

DirectiveMeaningNotes
%a Locale’s abbreviated weekday name.
%A Locale’s full weekday name.
%b Locale’s abbreviated month name.
%B Locale’s full month name.
%c Locale’s appropriate date and time representation.
%d Day of the month as a decimal number [01,31].
%H Hour (24-hour clock) as a decimal number [00,23].
%I Hour (12-hour clock) as a decimal number [01,12].
%j Day of the year as a decimal number [001,366].
%m Month as a decimal number [01,12].
%M Minute as a decimal number [00,59].
%p Locale’s equivalent of either AM or PM. (1)
%S Second as a decimal number [00,61]. (2)
%U Week number of the year (Sunday as the first day of the week) as a decimal number [00,53]. All days in a new year preceding the first Sunday are considered to be in week 0. (3)
%w Weekday as a decimal number [0(Sunday),6].
%W Week number of the year (Monday as the first day of the week) as a decimal number [00,53]. All days in a new year preceding the first Monday are considered to be in week 0. (3)
%x Locale’s appropriate date representation.
%X Locale’s appropriate time representation.
%y Year without century as a decimal number [00,99].
%Y Year with century as a decimal number.
%z Time zone offset indicating a positive or negative time difference from UTC/GMT of the form +HHMM or -HHMM, where H represents decimal hour digits and M represents decimal minute digits [-23:59, +23:59].
%Z Time zone name (no characters if no time zone exists).
%% A literal ‘%‘ character.

2.3、 時間格式之間的轉換

技術分享圖片


 1 import time
 2 # --------------------------按圖1轉換時間
 3 # localtime([secs])
 4 # 將一個時間戳轉換為當前時區的struct_time。secs參數未提供,則以當前時間為準。
 5 time.localtime()
 6 time.localtime(1473525444.037215)
 7 
 8 # gmtime([secs]) 和localtime()方法類似,gmtime()方法是將一個時間戳轉換為UTC時區(0時區)的struct_time。
 9 
10 # mktime(t) : 將一個struct_time轉化為時間戳。
11 print(time.mktime(time.localtime()))#1473525749.0
12 
13 
14 # strftime(format[, t]) : 把一個代表時間的元組或者struct_time(如由time.localtime()和
15 # time.gmtime()返回)轉化為格式化的時間字符串。如果t未指定,將傳入time.localtime()。如果元組中任何一個
16 # 元素越界,ValueError的錯誤將會被拋出。
17 print(time.strftime("%Y-%m-%d %X", time.localtime()))#2016-09-11 00:49:56
18 
19 # time.strptime(string[, format])
20 # 把一個格式化時間字符串轉化為struct_time。實際上它和strftime()是逆操作。
21 print(time.strptime(2011-05-05 16:37:06, %Y-%m-%d %X))
22 # time.struct_time(tm_year=2011, tm_mon=5, tm_mday=5, tm_hour=16, tm_min=37, tm_sec=6,
23 #  tm_wday=3, tm_yday=125, tm_isdst=-1)
24 # 在這個函數中,format默認為:"%a %b %d %H:%M:%S %Y"。

 

16-Python-常用模塊