path 子模塊
1 exists(path)
檢測(cè)文件或目錄是否存在。存在返回 True , 不存在返回 False 。
1os.path.exists("dog.jpeg")
2True
2 isfile(path)
判斷是否為文件。是返回 True, 不是返回 False。也可以用來(lái)判斷文件是否存在。
1os.path.isfile("dogs/")
2False
3 isdir(path)
判斷是否為目錄。是返回 True, 不是返回 False。也可以用來(lái)判斷目錄是否存在。
1os.path.isdir("dogs/")
2True
4 basename(path)
返回不包含所在目錄的文件名(含擴(kuò)展)。
1os.path.basename("dir1/dir2/file.ext")
2'file.ext'
5 dirname(path)
返回文件所在目錄。
1os.path.dirname("dir1/dir2/file.ext")
2'dir1/dir2'
6 split(path)
返回一個(gè)元組。元組第一個(gè)元素為文件所在目錄,第二個(gè)元素為文件名(含擴(kuò)展)。等效于 (dirname(path), basename(path))。
1os.path.split("dir1/dir2/file.ext")
2('dir1/dir2', 'file.ext')
7 splitext(path)
返回一個(gè)元組。元組第一個(gè)元素為文件所在目錄和文件名(不含擴(kuò)展),第二個(gè)元素為擴(kuò)展名(包含 .)。常用來(lái)讀取或更改文件擴(kuò)展名。
1os.path.splitext("dir1/dir2/file.ext")
2('dir1/dir2/file', '.ext')
8 join(path, *paths)
將路徑不同部分拼接成一個(gè)完整的路徑。等效于 os.sep.join([path, *paths]) 。
1os.path.join("dir1", "dir2", "file.ext")
2'dir1/dir2/file.ext'
9 getsize(path)
返回文件大小。單位字節(jié)。
1os.path.getsize("dog.jpeg")
218335
10 abspath(path)
返回絕對(duì)路徑。
11 relpath(path)
返回相對(duì)路徑。
目錄操作
1 listdir(path='.')
返回一個(gè)列表。列表為給定目錄下所有文件和子目錄,但不包含特殊目錄 . 和 ..。默認(rèn)為當(dāng)前目錄。
1os.listdir("dogs")[:5]
2['122.Pointer',
3 '069.French_bulldog',
4 '124.Poodle',
5 '112.Nova_scotia_duck_tolling_retriever',
6 '043.Canaan_dog']
2 mkdir(path, mode=0o777)
創(chuàng)建名為 path 的目錄。并以數(shù)字形式指定目錄權(quán)限,默認(rèn)權(quán)限為 777 。
1os.mkdir("newdir")
3 makedirs(path, mode=0o777)
遞歸方式創(chuàng)建路徑為 path 的目錄。并以數(shù)字形式指定目錄權(quán)限,默認(rèn)權(quán)限為 777 。可以看作功能更強(qiáng)大的 mkdir,它會(huì)自動(dòng)創(chuàng)建葉子節(jié)點(diǎn)目錄的所有上級(jí)目錄,而 mkdir 必須在上級(jí)目錄已經(jīng)存在情況下,才能創(chuàng)建葉子節(jié)點(diǎn)的目錄。
1os.makedirs("parent/child/newdir")
4 rmdir(path)
刪除目錄。目錄必須存在,并且只能刪除空目錄。不存在或不為空,都會(huì)異常。要想遞歸刪除整個(gè)目錄樹(shù),請(qǐng)使用 shutil.rmtree()。
1os.rmdir("newdir")
5 removedirs(path)
遞歸刪除目錄。目錄必須存在,并且只能刪除空目錄。不存在或不為空,都會(huì)異常。與 rmdir 不同的是,在刪除了葉子節(jié)點(diǎn)目錄后,會(huì)逐次刪除上級(jí)目錄,直到遇到不為空的目錄。
1os.removedirs("parent/child/newdir")
6 remove(path)
刪除文件。不能刪除目錄,給定路徑必須為文件,否則會(huì)異常。
1# 刪除文件
2os.remove("dog.copy.jpeg")
7 getcwd()
獲取當(dāng)前工作目錄,即當(dāng)前python腳本工作的目錄路徑
8 os.chdir("dirname")
改變當(dāng)前腳本工作目錄;相當(dāng)于shell下cd
9 rename(path)
1os.rename("oldname","newname") 重命名文件/目錄
10 sep
輸出操作系統(tǒng)特定的路徑分隔符。win下為”\”,macx下為”/”。
11 linesep
輸出當(dāng)前平臺(tái)使用的行終止符。
12 walk
遍歷路徑及其文件。
1for root,dirs,files in os.walk('dir'):
2 for f in files:
3 print(f)
環(huán)境參數(shù)
1 getenv(key, default=None)
獲取環(huán)境變量。
1os.getenv("PATH")
2'/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin'
2 get_exec_path(env=None)
返回用于搜索可執(zhí)行文件的目錄列表。可以看作是 PATH 環(huán)境變量的列表形式。
1os.get_exec_path()
2['/usr/local/bin',
3 '/usr/bin',
4 '/bin',
5 '/usr/sbin',
6 '/sbin']
進(jìn)程管理
1 system(command)
在當(dāng)前進(jìn)程中,啟動(dòng)子進(jìn)程,執(zhí)行命令 command(字符串),主進(jìn)程會(huì)阻塞,直到子進(jìn)程執(zhí)行完成。
返回狀態(tài)碼 0/1/2。
1if os.name == "nt":
2 command = "dir"
3else:
4 command = "ls -l"
5
6os.system(command)
70
2 popen(command)
在當(dāng)前進(jìn)程中,打開(kāi)一個(gè)管道。執(zhí)行命令 command(字符串),主進(jìn)程會(huì)阻塞,直到子進(jìn)程執(zhí)行完成。
返回一個(gè)文件描述符,內(nèi)容為 command 的 stdout。
1os.popen("bash command).read() 運(yùn)行shell命令,獲取執(zhí)行結(jié)果
2
3 os.startfile
打開(kāi)指定程序/文件
1os.startfile(r'C:\Program Files (x86)\Tencent\QQ\Bin\QQ.exe') #打開(kāi)指定文件
好了,這篇文章的內(nèi)容發(fā)貨聯(lián)盟就和大家分享到這里,如果大家網(wǎng)絡(luò)推廣引流創(chuàng)業(yè)感興趣,可以添加微信:80709525 備注:發(fā)貨聯(lián)盟引流學(xué)習(xí); 我拉你進(jìn)直播課程學(xué)習(xí)群,每周135晚上都是有實(shí)戰(zhàn)干貨的推廣引流技術(shù)課程免費(fèi)分享!