日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

python模塊系列-OS模塊

 印度阿三17 2019-04-03

Python的os模塊是一個(gè)跟操作系統(tǒng)結(jié)合比較密切的模塊,里面提供了很多很多比較有用的方法。

?

  1. os.getcwd() ? 獲取當(dāng)前工作目錄,即該P(yáng)ython腳本運(yùn)行時(shí)的目錄

print(os.getcwd())

結(jié)果:/Users/ssspure/PycharmProjects/File/osmodule

?

? ?2. os.chdir("dirname") ?切換到指定的目錄,返回值是None

?

???3.?os.curdir ?這并不是一個(gè)函數(shù),而是返回一個(gè)代表當(dāng)前目錄的常量

返回值是:"."

官方解釋?zhuān)篢he constant string used by the operating system to refer to the current directory. This is '.' for Windows and POSIX. Also available via os.path.

?

? ?4.?os.pardir ?跟上面的os.curdir是一樣的,返回值是:".."

官方解釋?zhuān)篢he constant string used by the operating system to refer to the parent directory. This is '..' for Windows and POSIX. Also available via os.path.

?

? ?5.?os.makedirs(dirname, mode=0o777, exist_ok=False)?創(chuàng)建目錄,可以指定多個(gè)不存在的目錄, ? ? ? ? ?Python遞歸創(chuàng)建這些目錄

os.makedirs("test/demo", 0o700)

? ?例如上面的代碼中,會(huì)在當(dāng)前目錄下先創(chuàng)建test目錄,之后再test目錄下創(chuàng)建demo目錄。

? mode參數(shù)指的是要設(shè)置創(chuàng)建目錄的權(quán)限,需要注意的一點(diǎn)是,第一位的權(quán)限必須是7,否則在創(chuàng)建多個(gè)目錄的時(shí)候會(huì)報(bào)錯(cuò),如下代碼所示。

os.makedirs("test/demo", 0o600, True)

上面的代碼只能創(chuàng)建test目錄,并且會(huì)出現(xiàn)這樣的錯(cuò)誤:PermissionError: [Errno 13] Permission denied: 'test/demo'

這是因?yàn)閯?chuàng)建的test目錄權(quán)限是rw-------,也就是當(dāng)前用戶并沒(méi)有進(jìn)入test目錄的權(quán)限,所以demo目錄在創(chuàng)建的時(shí)候就會(huì)出錯(cuò)。

exist_ok:該參數(shù)如果是False時(shí),如果已經(jīng)想要?jiǎng)?chuàng)建的目錄已經(jīng)存在,就會(huì)報(bào)錯(cuò),如果是True,當(dāng)要?jiǎng)?chuàng)建的目錄存在時(shí)不會(huì)報(bào)錯(cuò)。

?

? 6. os.removedirs("dir1/dir2/dir3") ?遞歸刪除目錄

? 首先刪除dir3,之后刪除dir2,最后刪除dir1。如果dir2目錄下面除了dir1之外還有別的目錄或者文件, ? ? 再刪除dir3之后,并不會(huì)刪除dir2。

?

? 7. os.mkdir("test", 0o777)

? 創(chuàng)建單個(gè)空目錄

?

? 8. rmdir("test") ? 刪除單個(gè)空目錄,如果目錄不為空的情況下會(huì)報(bào)錯(cuò)

?

? 9. os.listdir(dirname) ?列出指定目錄下的所有文件和文件夾,報(bào)錯(cuò)隱藏的目錄,返回值是一個(gè)列表

print(os.listdir("."))

上面代碼的執(zhí)行結(jié)果是:['__init__.py', 'odmodule.py', 'test']

?

? 10. os.remove(file) ?刪除一個(gè)文件

?

? 11. os.rename(file1, file2) ?將file1的文件名改為file2

?

? 12. os.stat(file) ?獲取file文件的相關(guān)信息,這些信息封裝在一個(gè)元組中

print(os.stat("demo.txt"))

返回結(jié)果:os.stat_result(st_mode=33188, st_ino=4067145, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=8, st_atime=1484573900, st_mtime=1484573764, st_ctime=1484573764)

?

? 13. os.sep ?返回當(dāng)前操作系統(tǒng)下的路徑分隔符

? ?Linux的路徑分隔符是"/",Windows的是"\\"

?

? 14. os.pathsep ?返回當(dāng)前操作系統(tǒng)的環(huán)境變量分隔符

? ?Linux的路徑分隔符是":",Windows的是";"

?

? 15. os.linesep ? 返回當(dāng)前操作系統(tǒng)的行分隔符

? ?Linux的路徑分隔符是"\n",Windows的是"\r\n"

?

? ?16. os.name ?輸出當(dāng)前平臺(tái)的字符串名稱(chēng)

? ?Linux-->posix ? ? ?win-->nt

?

? ?17.?os.system(command) ? ?執(zhí)行相應(yīng)平臺(tái)的Shell命令

os.system("ls")

列出當(dāng)前目錄下的文件,相當(dāng)于執(zhí)行l(wèi)s命令

?

? ?18. os.environ ? ?輸出當(dāng)前系統(tǒng)的環(huán)境變量

?

? ?19. os.path.abspath(path) ? ?返回指定路徑的絕對(duì)路徑 ? ?

print(os.path.abspath("."))

上面返回的結(jié)果是:/Users/ssspure/PycharmProjects/File/osmodule

?

? ?20.?os.path.split(path) ? 將指定的path分割成目錄和文件,即使不存在的路徑也能分割成功,最后返回一個(gè)目錄和文件組成的元組

print(os.path.split("/User/demo/test"))

?

? ?21. os.path.dirname(path)和os.path.basename(path)

? ?這兩個(gè)分別返回目錄名和文件名,其實(shí)也就是os.path.split函數(shù)的第一個(gè)和第二個(gè)結(jié)果

print(os.path.dirname("/Users/test/python"))
print(os.path.basename("/Users/test/python"))

輸出的結(jié)果分別是:

/Users/test

python

?

? ?22. os.path.exists(path) ? ?判斷指定的路徑是否存在,存在返回True,不存在返回False

print(os.path.exists("/Users/ssspure/專(zhuān)用播放器.exe"))

執(zhí)行上面的代碼返回True

?

print(os.path.exists("/Users/ssspure/專(zhuān)用播放器1.exe"))

上面的代碼返回False

?

? 23. os.path.isabs(path) ? 判斷路徑是否是絕對(duì)路徑,這個(gè)函數(shù)并不會(huì)判斷路徑是否是有效存在的路徑。

? ?Linux平臺(tái)下凡是以"/"開(kāi)頭的路徑都會(huì)被該函數(shù)判斷為絕對(duì)路徑,Windows下以磁盤(pán)開(kāi)頭的會(huì)被判斷為絕對(duì)路徑

?

? 24. os.path.isfile(filepath) ? 判斷指定的文件是否為文件

print(os.path.isfile("/Users/ssspure/專(zhuān)用播放器.exe"))

上面代碼的執(zhí)行結(jié)果返回的是True

?

? 25. os.path.isdir(path) ? 返回指定的路徑是否是一個(gè)目錄

print(os.path.isdir("/Users/ssspure"))

上面代碼的執(zhí)行結(jié)果是True

?

? 26. os.path.join(path1,path2,path3...) ? 將多個(gè)路徑拼接到一起

print(os.path.join("ssspure", "test", "demo"))

書(shū)面代碼的輸出結(jié)果是:ssspure/test/demo

?

? 27. os.path.getatime(path)和os.path.getmtime(path) 分別返回對(duì)應(yīng)文件的上一次訪問(wèn)時(shí)間和修改時(shí)間

print(os.path.getatime("/Users/ssspure/專(zhuān)用播放器.exe"))
print(os.path.getmtime("/Users/ssspure/專(zhuān)用播放器.exe"))

上面代碼的執(zhí)行結(jié)果是:

1484566427.0

1481293274.0

返回的是時(shí)間戳

來(lái)源:http://www./content-1-155651.html

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多