os.getcwd()
cwd 全稱為 Current Working Directory(CWD) ,即為當(dāng)前工作路徑;os.getcwd() 函數(shù)返回的就是當(dāng)前工作路徑
cwd 的作用
Python 調(diào)用腳本時(shí)需要指定腳本名稱,調(diào)用時(shí)解釋器首先會(huì)從當(dāng)前工作路徑下進(jìn)行搜索,如果文件名位于當(dāng)前文件夾下或配置到環(huán)境變量中,則調(diào)用成功否則調(diào)用失敗
>>> import os
>>> os.getcwd()
'D:\\Data\\map_data'
os.chidr(path)
- path(str),文件夾目錄;
改變 當(dāng)前工作路徑 至 path ;
>>> os.getcwd()
'D:\\Data\\map_data'
>>> os.chdir('../')#返回上一個(gè)目錄
>>> os.getcwd()
'D:\\Data'
os.mkdir(path)
- path(str),文件夾目錄
創(chuàng)建一個(gè)文件夾目錄,如果 path 存在則程序報(bào)錯(cuò)
>>> os.listdir(os.getcwd())
['map-location.xlsx', 'Map2.gif', 'Map22.gif']
>>> os.mkdir(os.getcwd() + '/make_dir')
>>> os.listdir(os.getcwd())
['make_dir', 'map-location.xlsx', 'Map2.gif', 'Map22.gif']
>>> os.mkdir(os.getcwd() +'/make_dir')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
FileExistsError: [WinError 183] 當(dāng)文件已存在時(shí),無法創(chuàng)建該文件。: 'D:\\Data\\map_data/make_dir'
os.makedirs(path)
- path(str),文件夾目錄
遞歸創(chuàng)建文件夾目錄 path,若中間部分文件夾不存在時(shí)則自動(dòng)創(chuàng)建;例如假設(shè)我想創(chuàng)建一個(gè) D:/Data/Ceshi/Ceshi1 目錄文件夾,而系統(tǒng)中沒有 D:/Data/Ceshi 文件夾,則在調(diào)用 os.makedirs(path) 函數(shù)創(chuàng)建前者時(shí),后者自動(dòng)創(chuàng)建;
>>> os.listdir(os.getcwd())
['make_dir', 'map-location.xlsx', 'Map2.gif', 'Map22.gif']
>>> os.makedirs(os.getcwd() + '/recu_dir/file_dir')
>>> os.listdir(os.getcwd())
['make_dir', 'map-location.xlsx', 'Map2.gif', 'Map22.gif', 'recu_dir']
>>> os.listdir(os.getcwd() + '/recu_dir')
['file_dir']
os.listdir(path)
- path(str),一個(gè)文件路徑;
返回一個(gè)列表,列出在目錄 path 下的文件目錄和文件名(沒有加入遞歸操作);未指定 path 則默認(rèn)為 當(dāng)前工作路徑
>>> os.listdir()
['make_dir', 'map-location.xlsx', 'Map2.gif', 'Map22.gif', 'recu_dir']
>>> os.listdir(os.getcwd())
['make_dir', 'map-location.xlsx', 'Map2.gif', 'Map22.gif', 'recu_dir']
os.remove(path)
- path(str),表示一個(gè)文件路徑;
刪除一個(gè)文件路徑,**注意這個(gè)函數(shù)不能刪除文件夾,如果 path 指定的是文件夾的話會(huì)報(bào)錯(cuò) **
>>> os.remove(os.getcwd() +'/make_dir')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
PermissionError: [WinError 5] 拒絕訪問。: 'D:\\Data\\map_data/make_dir'
>>> os.remove(os.getcwd() +'/Map21.gif')
>>> os.listdir()
['make_dir', 'map-location.xlsx', 'Map2.gif', 'Map22.gif', 'recu_dir']
os.rmdir(path)
- path(str),表示文件夾目錄
刪除一個(gè)文件夾 path ,需要注意的是 文件夾 path 必須為空的,否則報(bào)錯(cuò)
>>> os.listdir()
['make_dir', 'map-location.xlsx', 'Map2.gif', 'Map22.gif', 'recu_dir']
>>> os.rmdir(os.getcwd() + '/recu_dir')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
OSError: [WinError 145] 目錄不是空的。: 'D:\\Data\\map_data/recu_dir'
>>> os.rmdir(os.getcwd() +'/make_dir')
>>> os.listdir()
['map-location.xlsx', 'Map2.gif', 'Map22.gif', 'recu_dir']
os.rename(path1,path2)
- path1(str),未修改之前的文件路徑,或文件夾目錄;
- path2(str),準(zhǔn)備修改的文件路徑;
將原文件 path1 重命名為 path2 ,前提需要保證源文件 path1 存在并且用戶有足夠權(quán)限修改它
>>> os.listdir()
['map-location.xlsx', 'Map22.gif', 'recu_dir']
>>> os.rename(os.getcwd() +'/Map22.gif',os.getcwd() +'/Map123.gif')
>>> os.listdir()
['map-location.xlsx', 'Map123.gif', 'recu_dir']