原文出處:http://www.jb51.net/article/50070.htm
# os 模塊
os.sep?可以取代操作系統特定的路徑分隔符戒洼。windows下為 '\\'
os.name?字符串指示你正在使用的平臺檩奠。比如對于Windows,它是'nt'躲胳,而對于Linux/Unix用戶凰荚,它是 'posix'
os.getcwd()?函數得到當前工作目錄,即當前Python腳本工作的目錄路徑
os.getenv()?獲取一個環(huán)境變量,如果沒有返回none
os.putenv(key, value)?設置一個環(huán)境變量值
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)?創(chuàng)建一個目錄
os.makedirs(path)?遞歸的創(chuàng)建目錄
os.chdir(dirname)?改變工作目錄到dirname
os.path.getsize(name)?獲得文件大小濒募,如果name是目錄返回0L
os.path.abspath(name)?獲得絕對路徑
os.path.normpath(path)?規(guī)范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 )?遞歸刪除一個目錄以及目錄內的所有內容