os模塊中關於文件/目錄常用的函數使用方法
函數名 |
使用方法 |
getcwd() | 返回當前工作目錄 |
chdir(path) | 改變工作目錄 |
listdir(path='.') | 列舉指定目錄中的文件名('.'表示當前目錄,'..'表示上一級目錄) |
mkdir(path) | 創建單層目錄,如該目錄已存在拋出異常 |
makedirs(path) | 遞歸創建多層目錄,如該目錄已存在拋出異常,注意:'E:\\a\\b'和'E:\\a\\c'並不會沖突 |
remove(path) | 刪除文件 |
rmdir(path) | 刪除單層目錄,如該目錄非空則拋出異常 |
removedirs(path) | 遞歸刪除目錄,從子目錄到父目錄逐層嘗試刪除,遇到目錄非空則拋出異常 |
rename(old, new) | 將文件old重命名為new |
system(command) | 運行系統的shell命令 |
walk(top) | 遍歷top路徑以下所有的子目錄,返回一個三元組:(路徑, [包含目錄], [包含文件])【具體實現方案請看:第30講課后作業^_^】 |
以下是支持路徑操作中常用到的一些定義,支持所有平台 |
|
os.curdir | 指代當前目錄('.') |
os.pardir | 指代上一級目錄('..') |
os.sep | 輸出操作系統特定的路徑分隔符(Win下為'\\',Linux下為'/') |
os.linesep | 當前平台使用的行終止符(Win下為'\r\n',Linux下為'\n') |
os.name | 指代當前使用的操作系統(包括:'posix', 'nt', 'mac', 'os2', 'ce', 'java') |
os.path模塊中關於路徑常用的函數使用方法
函數名 |
使用方法 |
basename(path) | 去掉目錄路徑,單獨返回文件名 |
dirname(path) | 去掉文件名,單獨返回目錄路徑 |
join(path1[, path2[, ...]]) | 將path1, path2各部分組合成一個路徑名 |
split(path) | 分割文件名與路徑,返回(f_path, f_name)元組。如果完全使用目錄,它也會將最后一個目錄作為文件名分離,且不會判斷文件或者目錄是否存在 |
splitext(path) | 分離文件名與擴展名,返回(f_name, f_extension)元組 |
getsize(file) | 返回指定文件的尺寸,單位是字節 |
getatime(file) | 返回指定文件最近的訪問時間(浮點型秒數,可用time模塊的gmtime()或localtime()函數換算) |
getctime(file) | 返回指定文件的創建時間(浮點型秒數,可用time模塊的gmtime()或localtime()函數換算) |
getmtime(file) | 返回指定文件最新的修改時間(浮點型秒數,可用time模塊的gmtime()或localtime()函數換算) |
以下為函數返回 True 或 False |
|
exists(path) | 判斷指定路徑(目錄或文件)是否存在 |
isabs(path) | 判斷指定路徑是否為絕對路徑 |
isdir(path) | 判斷指定路徑是否存在且是一個目錄 |
isfile(path) | 判斷指定路徑是否存在且是一個文件 |
islink(path) | 判斷指定路徑是否存在且是一個符號鏈接 |
ismount(path) | 判斷指定路徑是否存在且是一個掛載點 |
samefile(path1, paht2) | 判斷path1和path2兩個路徑是否指向同一個文件 |