python中os模組詳解_python

來源:互聯網
上載者:User

os模組提供了對目錄或者檔案的建立/刪除/查看檔案屬性,還提供了對檔案以及目錄的路徑操作。比如說:絕對路徑,父目錄……

os.sep可以取代作業系統特定的路徑分隔字元。windows下為 “\\”,Linux下為"/"

os.linesep字串給出當前平台使用的行終止符。例如,Windows使用'\r\n',Linux使用'\n'而Mac使用'\r'。

os.pathsep 輸出用於分割檔案路徑的字串,系統使用此字元來分割搜尋路徑(像PATH),例如POSIX上':',Windows上的';'

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

os.chdir("dirname") 改變當前指令碼工作目錄;相當於shell下cd

os.curdir 返回目前的目錄: ('.')

os.pardir 擷取目前的目錄的父目錄字元串名:('..')

os.mkdir('dirname') 產生單級目錄;相當於shell中mkdir dirname

os.makedirs('dirname1/dirname2') 可產生多層遞迴目錄

os.remove(file) 刪除一個檔案

os.removedirs('dirname1') 若目錄為空白,則刪除,並遞迴到上一級目錄,如若也為空白,則刪除,依此類推

os.rmdir('dirname') 刪除單級空目錄,若目錄不為空白則無法刪除,報錯;相當於shell中rmdir dirname

os.listdir('dirname') 列出指定目錄下的所有檔案和子目錄,包括隱藏檔案,並以列表方式列印

os.rename("oldname","newname") 重新命名檔案/目錄,如果newname存在則替換出現錯誤

os.replace(src,dest) 重新命名檔案/目錄,如果dest表示的是檔案,存在則覆蓋原來的檔案,不報錯;若是目錄,存在則會報錯

os.chmod(path, mode, *, dir_fd=None, follow_symlinks=True)

Ex:os.chmod('C:\\my_share_file\\test.sh',755)

os.stat('path/filename') 擷取檔案/目錄資訊

os.utime(path,times) 修改時間屬性 times是個元組,(atime,mtime),這兩個時間數可以通過os.stat擷取

os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])

1.top表示需要遍曆的分類樹的路徑

2.topdown的預設值是”True”,表示首先返回分類樹下的檔案,然後在遍曆分類樹的子目錄.Topdown的值為”False”時,

則表示先遍曆分類樹的子目錄,返回子目錄下的檔案,最後返回根目錄下的檔案

3.onerror的預設值是”None”,表示忽略檔案遍曆時產生的錯誤.如果不為空白,則提供一個自訂函數提示錯誤資訊後繼續遍曆或拋出異常中止遍曆

該函數返回一個元組,該元組有3個元素,這3個元素分別表示當前遍曆的目錄,當前遍曆的目錄列表,當前遍曆的目錄的檔案清單

os.walk()舉例:

>>> import os>>> for root, dirs, files in os.walk("wd/chat", topdown=False):... for name in files:... print(os.path.join(root, name)) #列印檔案絕對路徑... for name in dirs:... print(os.path.join(root, name)) #列印目錄絕對路徑

os.name字串指示你正在使用的平台。比如對於Windows,它是'nt',而對於Linux/Unix使用者,它是'posix'。

os.getenv()擷取一個環境變數,如果沒有返回none

os.putenv(key, value)設定一個環境變數值

os.environ[]擷取環境變數的值 兩者等價:os.environ[‘HOME'] <->os.getenv(‘HOME')

os.system(command)函數用來運行shell命令。

os.popen("bash command") 運行shell命令,產生對象,可賦給變數,再用read讀取

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.