-
import
在Python中,我們建立的檔案基本都是以.py結尾,那一個.py的檔案就稱之為子產品。
為了友善管理子產品,Python中又引入了包(Packge)這個概念,每個包下面都有一個__init__.py檔案,這個檔案是必須存在的,否則,Python就把這個目錄當成普通目錄,而不是一個包。__init__.py可以是空檔案,也可以有Python代碼。因為__init__.py本身就是一個子產品,舉個例子:test目錄下面有__init_py,app.py,bbb.py三個檔案。
有時候一個檔案或者一個包中已經出現了一個函數,我們在另一個Python代碼中需要引入該檔案或者該檔案的某個函數,那怎麼解決呢?Python給我們提供一個關鍵字import,下面我們來了解一下它的用法:
1.如果是本地導入檔案,直接使用:import filename
2.如果導入的是一個包,該包下面必須是有__init__.py檔案才可以導入,否則報錯,隻有有了__init__.py檔案,Python解析器才會把這個目錄當成包。
常用的導入子產品格式:
form xxx import xxx
import xxx
在導入的時候,.py的字尾直接省略,如果是多級的包,或者想導入包裡面的函數等,可以使用from進行導入,舉個例子:
from aaa import bbb
import os
解釋:第一個例子是導入aaa包下面的bbb子產品或者導入aaa檔案下面的bbb類或者函數。
第二個import是直接導入系統子產品os子產品。
#import 一般我們用作導入子產品來用,常用的快捷鍵是 alt + Enter就可以直接導入子產品
#from ... import ... 這個是從什麼子產品中導入什麼,最終你可以導入的是一個函數,也可以是一個類,也可以是一個子產品
#總結:就是一層一層的調用就可以了。
#注意:1.import後面導入的是什麼,在調用的時候,就必須寫什麼,除非你用from進行導入
2.導入的時候不寫字尾名字
-
datetime擷取時間
在Python文檔裡,time是歸類在Generic Operating System Services中,換句話說,它提供的功能是更加接近于作業系統層面的。通讀文檔可知,time子產品是圍繞着Unix Timestamp進行的。time子產品基于不用于取時間,取時間推薦使用datetime子產品。
from datetime import datetime,timedelta now_time = datetime.now() a = now_time.strftime('%c') print(now_time) print(a) b = now_time + timedelta(days =-1) print(b)
解釋:
Timedelta可以接收days和seconds兩個參數,正數代表幾天之前的,負數代表幾天之前的,是以b代表的是一天之前的時候。
-
時間格式互相轉換
時間的三種存在方式:時間對象、時間字元串,時間戳。
字元串轉datetime:
datetime轉字元串from datetime import datetime,timedelta string = '2017-04-25 11:59:58' time1 = datetime.strptime(string,'%Y-%m-%d %H:%M:%S') print(time1) print(type(time1))
時間戳轉時間對象:from datetime import datetime,timedelta string = '2017-04-25 11:59:58' time1 = datetime.strptime(string,'%Y-%m-%d %H:%M:%S') print(time1) print(type(time1)) time1_str = datetime.strftime(time1,'%Y-%m-%d %H:%M:%S') print(type(time1_str)) print(time1_str)
from datetime import datetime,timedelta import time time1 = time.time() print(time1) time1_str = datetime.fromtimestamp(time1) print(time1_str) print(type(time1_str))