Python 常用模組詳解

2022-04-16 22:02:25 字數 4778 閱讀 7751

time模組:

time.time()    :獲取當前時間戳

time.sleep(x):睡眠x秒

time.localtime():獲取元組格式的九個時間元素

time.strftime("格式",struct_time):將元組格式的時間轉換為指定的字串格式

time.strptime("字串格式的時間","格式"):將指定格式字串時間轉換為元組格式的時間

time.ctime(seconds):將指定的時間戳轉化為固定格式的字串時間    

time.asctime(tuple):將指定的元組格式時間轉換為固定格式的字串時間

time.mktime(tuple):將乙個元組格式的時間轉換為乙個時間戳

time.gmtime(seconds):獲取乙個時間戳轉化為utc時區的元組格式

random模組:

random.random():隨機獲得乙個0到1的浮點數

random.randint(x,y):隨機獲得乙個由x到y的整數,包括x和y

random.randrange(x,y,z):隨機獲得乙個由x到y的整數,包含x但不包含y,可設定步長為z,

random.choice(seq):隨機獲得序列中的1個元素

random.sample(seq,x):隨機獲得序列中的x個元素

random.uniform(x,y):隨機獲得乙個大於x小於y的浮點數

random.shuffle(list):將list的順序打亂

os模組:

os.getcwd():獲取當前工作目錄,及當前python指令碼工作的目錄路徑

os.chdir(r"路徑"):改變當前指令碼的工作目錄;相當於shell下面的cd

os.curdir :返回當前目錄

os.pardir:返回當前目錄的父級目錄

os.makedirs(dirname):可生成多層遞迴目錄

os.removedirs(dirname):若目錄為空,則刪除,並遞迴到上一級目錄,若也為空,則刪除,以此類推

os.mkdir(dirname):生成單級目錄,相當於shell中的mkdir dirname

os.rmdir(dirname):刪除單級空目錄,若目錄不為空則無法刪除,報錯

os.listdir(dira):列出目錄a下面的所有檔案和子目錄與,包括隱藏檔案,並以列表方式列印

os.remove(filename):刪除乙個檔案            

os.rename(oldname,newname):重新命名檔案或者目錄

os.stat(filename/dirname):獲取檔案或目錄資訊

os.sep:輸出操作系特定的路徑分隔符,windows下為「\\」,linux下為「/」

os.linesep:輸出當前平台使用的回車換行符,windows下為「\r\n」,linux下為「\n」

os.pathsep:輸出用於分割檔案路徑的字串,windows下為「;」,linux下為「:」

os.name:輸出字串指示當前使用平台,windows為「nt」,linux下為「posix」

os.system("bash command"):執行shell命令,直接顯示

os.environ    :獲取系統環境變數

os.path.abspath():返回path規範化的絕對路徑

os.path.split():將path分割成目錄和檔名,作為兩個元素存放在乙個元祖中

os.path.dirname(path):返回path的目錄,其實就是os.path.split(path)的第乙個元素

os.path.basename(path):返回path最後的檔名,如果path以/或\結尾,那麼就返回空值,即os.path.split(path)的第二個元素

os.path.exists(path):如果path存在返回true,否則返回false

os.path.isabs(path):如果path是絕對路徑就返回true

os.path.isfile(path):如果path是乙個存在的檔案就返回true,否則返回false

os.path.isdir(path):如果path是乙個存在的目錄,就返回true,否則返回false

os.path.join(path1,path2,[.......]):將多個路徑組合後返回,第乙個絕對路徑之前的引數將被忽略

os.path.getatime(path):返回path所指向的檔案或目錄的最後訪問時間

os.path.getmtime(path):返回path所指向的檔案或目錄的最後修改時間

shutil模組:

shutil.copyfileobj(fsrc,fdst[,length]):將檔案內容拷貝到另乙個檔案中,可以部分內容

shutil.copyfile(src,dst):拷貝檔案

shutil.copymode(src,dst):僅拷貝許可權。內容、組、使用者均不變

shutil.copystat(src,dst):拷貝狀態的資訊,包括:mode bits, atime, mtime, flags

shutil.copy(src,dst):拷貝檔案和許可權

shutil.copy2(src,dst):拷貝檔案和狀態資訊

shutil.copytree(src,dst,symlinks=false,ignore=none):遞迴的去拷貝檔案(及目錄)

shutil.ignore_patterns(*patterns)                                shutil.rmtree(path[, ignore_errors[, onerror]]):遞迴的去刪除檔案

shutil.move(src,dst):遞迴的去移動檔案

shutil.make_archive(base_name,format,root_dir,owner,group,logger)

各項引數解釋:         

base_name: 壓縮包的檔名,也可以是壓縮包的路徑。只是檔名時,則儲存至當前目錄,否則儲存至指定路徑,

如:www                        =>儲存至當前路徑

如:/users/wupeiqi/www =>儲存至/users/wupeiqi/

format: 壓縮包種類,「zip」, 「tar」, 「bztar」,「gztar」

root_dir: 要壓縮的資料夾路徑(預設當前目錄)

owner: 使用者,預設當前使用者

group: 組,預設當前組

logger: 用於記錄日誌,通常是logging.logger物件

zipfile模組:

# 壓縮

z = zipfile.zipfile('laxi.zip', 'w')

z.write('a.log')

z.write('data.data')

z.close()

# 解壓

z = zipfile.zipfile('laxi.zip', 'r')

z.extractall()

z.close()

tarfile模組:

# 壓縮

tar = tarfile.open('your.tar','w')

tar.add('/users/wupeiqi/pycharmprojects/bbs2.zip', arcname='bbs2.zip')

tar.add('/users/wupeiqi/pycharmprojects/cmdb.zip', arcname='cmdb.zip')

tar.close()

# 解壓

tar = tarfile.open('your.tar','r')

tar.extractall()  # 可設定解壓位址

tar.close()

shelve模組:

import shelve

import datetime

#寫入檔案

f = shelve.open("test")

score = [10,52,6,4,9,448]

information =

time = datetime.datetime.now()

f["score"] = score

f["information"] = information

f["time"] = time

f.close()

#讀出檔案

f = shelve.open("test")

print(f["score"],type(f["score"]))

print(f["information"],type(f["information"]))

print(f["time"])

re模組:

python3 5 常用內建模組詳解

os模組 提供對作業系統進行呼叫的介面 os.getcwd 獲取當前工作目錄,即當前python指令碼工作的目錄路徑 os.chdir dirname 改變當前指令碼工作目錄 相當於shell下cd os.curdir 返回當前目錄 os.pardir 獲取當前目錄的父目錄字串名 os.makedi...

python模組詳解

1.模組內容 模組可以包含可執行語句以及函式定義,可執行語句只有在第一次import或當作指令碼直接執行時才會執行。每個模組有自己的私有符號表,所以不會造成不同模組之間的變數汙染。2.匯入模組 模組匯入的三種方式 3.執行模組 執行的兩種方式 4.模組搜尋路徑 既然要匯入模組,直譯器就需要查詢匯入的...

ansible常用模組詳解

1.模組介紹 明確一點 模組的執行就類似是linux命令的一條命令,就單單的是為了執行一條語句,不是批量的操作,批量操作需要用到playbook內類似shell編寫指令碼進行批量。1.1 模組的使用方法 檢視ansible支援的所有模組 ansible doc l 然後在 ansible doc l...