Python的os,shutil和sys模組

來源:互聯網
上載者:User

標籤:exception   AC   移動   windows   erro   線程   posix   unicode   nbsp   

*********OS***********

os.sep 可以取代作業系統特定的路徑分隔字元。windows下為 ‘\\‘
os.name 字串指示你正在使用的平台。比如對於Windows,它是‘nt‘,而對於Linux/Unix使用者,它是 ‘posix‘
os.getcwd() 函數得到當前工作目錄,即當前Python指令碼工作的目錄路徑
os.getenv() 擷取一個環境變數,如果沒有返回none
os.putenv(key, value) 設定一個環境變數值
os.listdir(path) 返回指定目錄下的所有檔案和目錄名
os.remove(path) 函數用來刪除一個檔案
os.system(command) 函數用來運行shell命令
os.linesep 字串給出當前平台使用的行終止符。例如,Windows使用 ‘\r\n‘,Linux使用 ‘\n‘ 而Mac使用 ‘\r‘
os.path.split(path)  函數返回一個路徑的目錄名和檔案名稱
os.path.isfile() 和os.path.isdir()函數分別檢驗給出的路徑是一個檔案還是目錄
os.path.exists() 函數用來檢驗給出的路徑是否真地存在
os.curdir  返回目前的目錄 (‘.‘)
os.mkdir(path) 建立一個目錄
os.makedirs(path) 遞迴的建立目錄
os.chdir(dirname) 改變工作目錄到dirname    
os.path.getsize(name) 獲得檔案大小,如果name是目錄返回0L
os.path.abspath(name) 獲得絕對路徑
os.path.normpath(path) 規範path字串形式
os.path.splitext()  分離檔案名稱與副檔名
os.path.join(path,name) 串連目錄與檔案名稱或目錄
os.path.basename(path) 返迴文件名
os.path.dirname(path) 返迴文件路徑
os.walk(top,topdown=True,onerror=None)  遍曆迭代目錄
os.rename(src, dst)  重新命名file或者directory src到dst 如果dst是一個存在的directory, 將拋出OSError. 在Unix, 如果dst在存且是一個file, 如果使用者有許可權的話,它將被安靜的替換. 操作將會失敗在某些Unix 中如果src和dst在不同的檔案系統中. 如果成功, 這命名操作將會是一個原子操作 (這是POSIX 需要). 在 Windows上, 如果dst已經存在, 將拋出OSError,即使它是一個檔案. 在unix,Windows中有效。
os.renames(old, new) 遞迴重新命名檔案夾或者檔案。像rename()

 

****************Shutil********************

shutil.copyfile( src, dst) 從源src複製到dst中去。當然前提是目標地址是具備可寫入權限。拋出的異常資訊為IOException. 如果當前的dst已存在的話就會被覆蓋掉
shutil.move( src, dst)  移動檔案或重新命名
shutil.copymode( src, dst) 只是會複製其許可權其他的東西是不會被複製的
shutil.copystat( src, dst) 複製許可權、最後訪問時間、最後修改時間
shutil.copy( src, dst)  複製一個檔案到一個檔案或一個目錄
shutil.copy2( src, dst)  在copy上的基礎上再複製檔案最後訪問時間與修改時間也複製過來了,類似於cp –p的東西
shutil.copy2( src, dst)  如果兩個位置的檔案系統是一樣的話相當於是rename操作,只是改名;如果是不在相同的檔案系統的話就是做move操作
shutil.copytree( olddir, newdir, True/Flase)
把olddir拷貝一份newdir,如果第3個參數是True,則複製目錄時將保持檔案夾下的符號串連,如果第3個參數是False,則將在複製的目錄下產生物理副本來替代符號串連
shutil.rmtree( src ) 遞迴刪除一個目錄以及目錄內的所有內容

shutil.rmtree(path) #遞迴刪除檔案夾

 

***************sys************************

sys.argv 命令列參數List,第一個元素是程式本身路徑

sys.modules.keys() 返回所有已經匯入的模組列表

sys.exc_info() 擷取當前正在處理的異常類,exc_type、exc_value、exc_traceback當前處理的異常詳細資料

sys.exit(n) 退出程式,正常退出時exit(0)

sys.hexversion 擷取Python解釋程式的版本值,16進位格式如:0x020403F0

sys.version 擷取Python解釋程式的版本資訊

sys.maxint 最大的Int值

sys.maxunicode 最大的Unicode值

sys.modules 返回系統匯入的模組欄位,key是模組名,value是模組

sys.path 返回模組的搜尋路徑,初始化時使用PYTHONPATH環境變數的值

sys.platform 返回作業系統平台名稱

sys.stdout 標準輸出

sys.stdin 標準輸入

sys.stderr 錯誤輸出

sys.exc_clear() 用來清除當前線程所出現的當前的或最近的錯誤資訊

sys.exec_prefix 返回平台獨立的python檔案安裝的位置

sys.byteorder 本地位元組規則的指標,big-endian平台的值是‘big‘,little-endian平台的值是‘little‘

sys.copyright 記錄python著作權相關的東西

sys.api_version 解譯器的C的API版本

Python的os,shutil和sys模組

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.