Pythontempfile模塊生成臨時(shí)文件和臨時(shí)目錄-創(chuàng)新互聯(lián)

tempfile 模塊專門用于創(chuàng)建臨時(shí)文件和臨時(shí)目錄,它既可以在 UNIX 平臺(tái)上運(yùn)行良好,也可以在 Windows 平臺(tái)上運(yùn)行良好。

成都創(chuàng)新互聯(lián)是少有的成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、營(yíng)銷型企業(yè)網(wǎng)站、小程序開發(fā)、手機(jī)APP,開發(fā)、制作、設(shè)計(jì)、賣鏈接、推廣優(yōu)化一站式服務(wù)網(wǎng)絡(luò)公司,2013年至今,堅(jiān)持透明化,價(jià)格低,無套路經(jīng)營(yíng)理念。讓網(wǎng)頁(yè)驚喜每一位訪客多年來深受用戶好評(píng)

tempfile 模塊中常用的函數(shù),如表 1 所示。

表 1 tempfile 模塊常用函數(shù)及功能

tempfile 模塊函數(shù) 功能描述
tempfile.TemporaryFile(mode='w+b', buffering=None, encoding=None, newline=None, suffix=None, prefix=None, dir=None) 創(chuàng)建臨時(shí)文件。該函數(shù)返回一個(gè)類文件對(duì)象,也就是支持文件 I/O。
tempfile.NamedTemporaryFile(mode='w+b', buffering=None, encoding=None, newline=None, suffix=None, prefix=None, dir=None, delete=True) 創(chuàng)建臨時(shí)文件。該函數(shù)的功能與上一個(gè)函數(shù)的功能大致相同,只是它生成的臨時(shí)文件在文件系統(tǒng)中有文件名。
tempfile.SpooledTemporaryFile(max_size=0, mode='w+b', buffering=None, encoding=None, newline=None, suffix=None, prefix=None, dir=None) 創(chuàng)建臨時(shí)文件。與 TemporaryFile 函數(shù)相比,當(dāng)程序向該臨時(shí)文件輸出數(shù)據(jù)時(shí),會(huì)先輸出到內(nèi)存中,直到超過 max_size 才會(huì)真正輸出到物理磁盤中。
tempfile.TemporaryDirectory(suffix=None, prefix=None, dir=None) 生成臨時(shí)目錄。
tempfile.gettempdir() 獲取系統(tǒng)的臨時(shí)目錄。
tempfile.gettempdirb() 與 gettempdir() 相同,只是該函數(shù)返回字節(jié)串。
tempfile.gettempprefix() 返回用于生成臨時(shí)文件的前綴名。
tempfile.gettempprefixb() 與 gettempprefix() 相同,只是該函數(shù)返回字節(jié)串。

提示:表中有些函數(shù)包含很多參數(shù),但這些參數(shù)都具有自己的默認(rèn)值,因此如果沒有特殊要求,可以不對(duì)其傳參。

tempfile 模塊還提供了 tempfile.mkstemp() 和 tempfile.mkdtemp() 兩個(gè)低級(jí)別的函數(shù)。上面介紹的 4 個(gè)用于創(chuàng)建臨時(shí)文件和臨時(shí)目錄的函數(shù)都是高級(jí)別的函數(shù),高級(jí)別的函數(shù)支持自動(dòng)清理,而且可以與 with 語(yǔ)句一起使用,而這兩個(gè)低級(jí)別的函數(shù)則不支持,因此一般推薦使用高級(jí)別的函數(shù)來創(chuàng)建臨時(shí)文件和臨時(shí)目錄。

此外,tempfile 模塊還提供了 tempfile.tempdir 屬性,通過對(duì)該屬性賦值可以改變系統(tǒng)的臨時(shí)目錄。

下面程序示范了如何使用臨時(shí)文件和臨時(shí)目錄:

import tempfile
# 創(chuàng)建臨時(shí)文件
fp = tempfile.TemporaryFile()
print(fp.name)
fp.write('兩情若是久長(zhǎng)時(shí),'.encode('utf-8'))
fp.write('又豈在朝朝暮暮。'.encode('utf-8'))
# 將文件指針移到開始處,準(zhǔn)備讀取文件
fp.seek(0)
print(fp.read().decode('utf-8')) # 輸出剛才寫入的內(nèi)容
# 關(guān)閉文件,該文件將會(huì)被自動(dòng)刪除
fp.close()
# 通過with語(yǔ)句創(chuàng)建臨時(shí)文件,with會(huì)自動(dòng)關(guān)閉臨時(shí)文件
with tempfile.TemporaryFile() as fp:
# 寫入內(nèi)容
fp.write(b'I Love Python!')
# 將文件指針移到開始處,準(zhǔn)備讀取文件
fp.seek(0)
# 讀取文件內(nèi)容
print(fp.read()) # b'I Love Python!'
# 通過with語(yǔ)句創(chuàng)建臨時(shí)目錄
with tempfile.TemporaryDirectory() as tmpdirname:
print('創(chuàng)建臨時(shí)目錄', tmpdirname)

分享題目:Pythontempfile模塊生成臨時(shí)文件和臨時(shí)目錄-創(chuàng)新互聯(lián)
分享URL:http://muchs.cn/article36/idgpg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、建站公司、App開發(fā)、企業(yè)建站、微信小程序、品牌網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)