pythontemp_python 临时文件夹 的 tempfile模块学习
python的臨時(shí)文件夾的tempfile模塊學(xué)習(xí)
應(yīng)用程序經(jīng)常要保存一些臨時(shí)的信息,這些信息不是特別重要,沒(méi)有必要寫(xiě)在配置文件 里,但又不能沒(méi)有,這時(shí)候就可以把這些信息寫(xiě)到臨時(shí)文件里。其實(shí)很 多程序在運(yùn)行的時(shí)候,都會(huì)產(chǎn)生一大堆臨時(shí)文件,有些用于保存日志,有些用于保存一些臨時(shí)數(shù)據(jù),還有一些保存一些無(wú)關(guān)緊要的設(shè)置。在windows操作系統(tǒng) 中,臨時(shí)文件一般被保存在這個(gè)文件夾下:C:\Documents and Settings\User\Local Settings\Temp。其實(shí)我們最常用的IE瀏覽器在瀏覽網(wǎng)頁(yè)的時(shí)候,會(huì)產(chǎn)生大量的臨時(shí)文件,這些臨時(shí)文件一般是我們?yōu)g覽過(guò)的網(wǎng)頁(yè)的本地副本。 Python提供了一個(gè)tempfile模塊,用來(lái)對(duì)臨時(shí)數(shù)據(jù)進(jìn)行操作。查閱Python手冊(cè),里面介紹了如下常用的方法:
tempfile.mkstemp([suffix=''[, prefix='tmp'[, dir=None[, text=False]]]])
mkstemp方法用于創(chuàng)建一個(gè)臨時(shí)文件。該方法僅僅用于創(chuàng)建臨時(shí)文件, 調(diào)用tempfile.mkstemp函數(shù)后,返回包含兩個(gè)元素的元組,第一個(gè)元素指示操作該臨時(shí)文件的安全級(jí)別,第二個(gè)元素指示該臨時(shí)文件的路徑。參數(shù) suffix和prefix分別表示臨時(shí)文件名稱的后綴和前綴;dir指定了臨時(shí)文件所在的目錄,如果沒(méi)有指定目錄,將根據(jù)系統(tǒng)環(huán)境變量TMPDIR, TEMP或者TMP的設(shè)置來(lái)保存臨時(shí)文件;參數(shù)text指定了是否以文本的形式來(lái)操作文件,默認(rèn)為False,表示以二進(jìn)制的形式來(lái)操作文件。
tempfile.mkdtemp([suffix=''[, prefix='tmp'[, dir=None]]])
該函數(shù)用于創(chuàng)建一個(gè)臨時(shí)文件夾。參數(shù)的意思與tempfile.mkdtemp一樣。它返回臨時(shí)文件夾的絕對(duì)路徑。
tempfile.mktemp([suffix=''[, prefix='tmp'[, dir=None]]])
mktemp用于返回一個(gè)臨時(shí)文件的路徑,但并不創(chuàng)建該臨時(shí)文件。
tempfile.tempdir
該屬性用于指定創(chuàng)建的臨時(shí)文件(夾)所在的默認(rèn)文件夾。如果沒(méi)有設(shè)置該屬性或者將其設(shè)為None,Python將返回以下環(huán)境變量TMPDIR, TEMP, TEMP指定的目錄,如果沒(méi)有定義這些環(huán)境變量,臨時(shí)文件將被創(chuàng)建在當(dāng)前工作目錄。
tempfile.gettempdir()
gettempdir()則用于返回保存臨時(shí)文件的文件夾路徑。
tempfile.TemporaryFile([mode='w+b'[, bufsize=-1[, suffix=''[, prefix='tmp'[, dir=None]]]]])
該函數(shù)返回一個(gè) 類文件 對(duì)象(file-like)用于臨時(shí)數(shù)據(jù)保存(實(shí)際上對(duì)應(yīng)磁盤(pán)上的一個(gè)臨時(shí)文件)。當(dāng)文件對(duì)象被close或者被del的時(shí)候,臨時(shí)文件將從磁盤(pán)上刪除。 mode、bufsize參數(shù)的單方與open()函數(shù)一樣;suffix和prefix指定了臨時(shí)文件名的后綴和前綴;dir用于設(shè)置臨時(shí)文件默認(rèn)的保 存路徑。返回的類文件對(duì)象有一個(gè)file屬性,它指向真正操作的底層的file對(duì)象。
tempfile.NamedTemporaryFile([mode='w+b'[, bufsize=-1[, suffix=''[, prefix='tmp'[, dir=None[, delete=True]]]]]])
tempfile.NamedTemporaryFile函數(shù)的行為與tempfile.TemporaryFile類似,只不過(guò)它多了一個(gè)delete 參數(shù),用于指定類文件對(duì)象close或者被del之后,是否也一同刪除磁盤(pán)上的臨時(shí)文件(當(dāng)delete = True的時(shí)候,行為與TemporaryFile一樣)。
tempfile.SpooledTemporaryFile([max_size=0[, mode='w+b'[, bufsize=-1[, suffix=''[, prefix='tmp'[, dir=None]]]]]])
tempfile.SpooledTemporaryFile函數(shù)的行為與tempfile.TemporaryFile類似。不同的是向類文件對(duì)象寫(xiě)數(shù) 據(jù)的時(shí)候,數(shù)據(jù)長(zhǎng)度只有到達(dá)參數(shù)max_size指定大小時(shí),或者調(diào)用類文件對(duì)象的fileno()方法,數(shù)據(jù)才會(huì)真正寫(xiě)入到磁盤(pán)的臨時(shí)文件中。
總結(jié)
以上是生活随笔為你收集整理的pythontemp_python 临时文件夹 的 tempfile模块学习的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python框架django文档_Dja
- 下一篇: python进程join的用法_pyth