python os 模塊的學(xué)習(xí)

python之OS模塊詳解

^_^但骨,步入第二個模塊世界----->OS

常見函數(shù)列表

os.sep:取代操作系統(tǒng)特定的路徑分隔符

os.name:指示你正在使用的工作平臺摘符。比如對于Windows购啄,它是'nt'烤送,而對于Linux/Unix用戶歼指,它是'posix'咖摹。

os.getcwd:得到當(dāng)前工作目錄评姨,即當(dāng)前python腳本工作的目錄路徑。

os.getenv()和os.putenv:分別用來讀取和設(shè)置環(huán)境變量

os.listdir():返回指定目錄下的所有文件和目錄名

os.remove(file):刪除一個文件

os.stat(file):獲得文件屬性

os.chmod(file):修改文件權(quán)限和時間戳

os.mkdir(name):創(chuàng)建目錄

os.rmdir(name):刪除目錄

os.removedirs(r“c:\python”):刪除多個目錄

os.system():運行shell命令

os.exit():終止當(dāng)前進程

os.linesep:給出當(dāng)前平臺的行終止符萤晴。例如吐句,Windows使用'\r\n',Linux使用'\n'而Mac使用'\r'

os.path.split():返回一個路徑的目錄名和文件名

os.path.isfile()和os.path.isdir()分別檢驗給出的路徑是一個目錄還是文件

os.path.existe():檢驗給出的路徑是否真的存在

os.listdir(dirname):列出dirname下的目錄和文件

os.getcwd():獲得當(dāng)前工作目錄

os.curdir:返回當(dāng)前目錄('.')

os.chdir(dirname):改變工作目錄到dirname

os.path.isdir(name):判斷name是不是目錄店读,不是目錄就返回false

os.path.isfile(name):判斷name這個文件是否存在嗦枢,不存在返回false

os.path.exists(name):判斷是否存在文件或目錄name

os.path.getsize(name):或得文件大小,如果name是目錄返回0L

os.path.abspath(name):獲得絕對路徑

os.path.isabs():判斷是否為絕對路徑

os.path.normpath(path):規(guī)范path字符串形式

os.path.split(name):分割文件名與目錄(事實上屯断,如果你完全使用目錄文虏,它也會將最后一個目錄作為文件名而分離,同時它不會判斷文件或目錄是否存在)

os.path.splitext():分離文件名和擴展名

os.path.join(path,name):連接目錄與文件名或目錄

os.path.basename(path):返回文件名

os.path.dirname(path):返回文件路徑

文件操作

os.mknod("text.txt"):創(chuàng)建空文件

fp = open("text.txt",w):直接打開一個文件殖演,如果文件不存在就創(chuàng)建文件

關(guān)于open的模式

w 寫方式

a 追加模式打開(從EOF開始氧秘,必要時創(chuàng)建新文件)

r+ 以讀寫模式打開

w+ 以讀寫模式打開

a+ 以讀寫模式打開

rb 以二進制讀模式打開

wb 以二進制寫模式打開 (參見 w )

ab 以二進制追加模式打開 (參見 a )

rb+ 以二進制讀寫模式打開 (參見 r+ )

wb+ 以二進制讀寫模式打開 (參見 w+ )

ab+ 以二進制讀寫模式打開 (參見 a+ )

關(guān)于文件的函數(shù)

fp.read([size])

size為讀取的長度,以byte為單位

fp.readline([size])

讀一行趴久,如果定義了size丸相,有可能返回的只是一行的一部分

fp.readlines([size])

把文件每一行作為一個list的一個成員,并返回這個list彼棍。其實它的內(nèi)部是通過循環(huán)調(diào)用readline()來實現(xiàn)的已添。如果提供size參數(shù),size是表示讀取內(nèi)容的總長滥酥,也就是說可能只讀到文件的一部分。

fp.write(str)

把str寫到文件中畦幢,write()并不會在str后加上一個換行符

fp.writelines(seq)

把seq的內(nèi)容全部寫到文件中(多行一次性寫入)坎吻。這個函數(shù)也只是忠實地寫入,不會在每行后面加上任何東西宇葱。

fp.close()

關(guān)閉文件瘦真。python會在一個文件不用后自動關(guān)閉文件刊头,不過這一功能沒有保證,最好還是養(yǎng)成自己關(guān)閉的習(xí)慣诸尽。 如果一個文件在關(guān)閉后還對其進行操作會產(chǎn)生ValueError

fp.flush()

把緩沖區(qū)的內(nèi)容寫入硬盤

fp.fileno()

返回一個長整型的”文件標(biāo)簽“

fp.isatty()

文件是否是一個終端設(shè)備文件(unix系統(tǒng)中的)

fp.tell()

返回文件操作標(biāo)記的當(dāng)前位置原杂,以文件的開頭為原點

fp.next()

返回下一行,并將文件操作標(biāo)記位移到下一行您机。把一個file用于for … in file這樣的語句時穿肄,就是調(diào)用next()函數(shù)來實現(xiàn)遍歷的。

fp.seek(offset[,whence])

將文件打操作標(biāo)記移到offset的位置际看。這個offset一般是相對于文件的開頭來計算的咸产,一般為正數(shù)。但如果提供了whence參數(shù)就不一定了仲闽,whence可以為0表示從頭開始計算脑溢,1表示以當(dāng)前位置為原點計算。2表示以文件末尾為原點進行計算赖欣。需要注意屑彻,如果文件以a或a+的模式打開,每次進行寫操作時顶吮,文件操作標(biāo)記會自動返回到文件末尾社牲。

fp.truncate([size])

把文件裁成規(guī)定的大小,默認(rèn)的是裁到當(dāng)前文件操作標(biāo)記的位置云矫。如果size比文件的大小還要大膳沽,依據(jù)系統(tǒng)的不同可能是不改變文件,也可能是用0把文件補到相應(yīng)的大小让禀,也可能是以一些隨機的內(nèi)容加上去挑社。

目錄操作

os.mkdir("file")

創(chuàng)建目錄

復(fù)制文件:

shutil.copyfile("oldfile","newfile")

oldfile和newfile都只能是文件

shutil.copy("oldfile","newfile")

oldfile只能是文件夾捞附,newfile可以是文件碳蛋,也可以是目標(biāo)目錄

shutil.copytree("olddir","newdir")

復(fù)制文件夾.olddir和newdir都只能是目錄,且newdir必須不存在

os.rename("oldname","newname")

重命名文件(目錄).文件或目錄都是使用這條命令

shutil.move("oldpos","newpos")

移動文件(目錄)

os.rmdir("dir")

只能刪除空目錄

shutil.rmtree("dir")

空目錄蚁袭、有內(nèi)容的目錄都可以刪

os.chdir("path")

轉(zhuǎn)換目錄腮敌,換路徑

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末阱当,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子糜工,更是在濱河造成了極大的恐慌弊添,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,482評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件捌木,死亡現(xiàn)場離奇詭異油坝,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評論 2 382
  • 文/潘曉璐 我一進店門澈圈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來彬檀,“玉大人,你說我怎么就攤上這事瞬女∏系郏” “怎么了?”我有些...
    開封第一講書人閱讀 152,762評論 0 342
  • 文/不壞的土叔 我叫張陵诽偷,是天一觀的道長坤学。 經(jīng)常有香客問我,道長渤刃,這世上最難降的妖魔是什么拥峦? 我笑而不...
    開封第一講書人閱讀 55,273評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮卖子,結(jié)果婚禮上略号,老公的妹妹穿的比我還像新娘。我一直安慰自己洋闽,他們只是感情好玄柠,可當(dāng)我...
    茶點故事閱讀 64,289評論 5 373
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著诫舅,像睡著了一般羽利。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上刊懈,一...
    開封第一講書人閱讀 49,046評論 1 285
  • 那天这弧,我揣著相機與錄音,去河邊找鬼虚汛。 笑死匾浪,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的卷哩。 我是一名探鬼主播蛋辈,決...
    沈念sama閱讀 38,351評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼将谊!你這毒婦竟也來了冷溶?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,988評論 0 259
  • 序言:老撾萬榮一對情侶失蹤尊浓,失蹤者是張志新(化名)和其女友劉穎逞频,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體栋齿,經(jīng)...
    沈念sama閱讀 43,476評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡苗胀,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,948評論 2 324
  • 正文 我和宋清朗相戀三年托酸,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片柒巫。...
    茶點故事閱讀 38,064評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖谷丸,靈堂內(nèi)的尸體忽然破棺而出堡掏,到底是詐尸還是另有隱情,我是刑警寧澤刨疼,帶...
    沈念sama閱讀 33,712評論 4 323
  • 正文 年R本政府宣布泉唁,位于F島的核電站,受9級特大地震影響揩慕,放射性物質(zhì)發(fā)生泄漏亭畜。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,261評論 3 307
  • 文/蒙蒙 一迎卤、第九天 我趴在偏房一處隱蔽的房頂上張望拴鸵。 院中可真熱鬧,春花似錦蜗搔、人聲如沸劲藐。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽聘芜。三九已至,卻和暖如春缝龄,著一層夾襖步出監(jiān)牢的瞬間汰现,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評論 1 262
  • 我被黑心中介騙來泰國打工叔壤, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留瞎饲,地道東北人。 一個月前我還...
    沈念sama閱讀 45,511評論 2 354
  • 正文 我出身青樓百新,卻偏偏與公主長得像企软,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子饭望,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,802評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 常見函數(shù)列表 os.sep:取代操作系統(tǒng)特定的路徑分隔符 os.name:指示你正在使用的工作平臺仗哨。比如對于W...
    遺步看風(fēng)景閱讀 3,245評論 1 4
  • python中對文件、文件夾(文件操作函數(shù))的操作需要涉及到os模塊和shutil模塊铅辞。 得到當(dāng)前工作目錄厌漂,即當(dāng)前...
    舊__閱讀 621評論 0 1
  • 本文實例講述了python中os操作文件及文件路徑的方法。分享給大家供大家參考斟珊。具體分析如下: python獲取文...
    BigJeffWang閱讀 1,483評論 0 50
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理苇倡,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,599評論 18 139
  • 總是記不住API,整理一下: python中對文件旨椒、文件夾(文件操作函數(shù))的操作需要涉及到os模塊和shutil模...
    時尚灬IT男閱讀 679評論 0 3