1. 程式人生 > 其它 >Python3 os模組

Python3 os模組

python裡面的os模組有許多方法可以讓我們通過程式碼實現建立,刪除和更改目錄

整理自菜鳥教程網

os.access(path, mode)

概述

os.access() 方法使用當前的uid/gid嘗試訪問路徑。大部分操作使用有效的 uid/gid, 因此執行環境可以在 suid/sgid 環境嘗試。

語法

access()方法語法格式如下:

os.access(path, mode);

引數

  • path-- 要用來檢測是否有訪問許可權的路徑。

  • mode-- mode為F_OK,測試存在的路徑,或者它可以是包含R_OK, W_OK和X_OK或者R_OK, W_OK和X_OK其中之一或者更多。

    • os.F_OK:作為access()的mode引數,測試path是否存在。
    • os.R_OK:包含在access()的mode引數中 , 測試path是否可讀。
    • os.W_OK包含在access()的mode引數中 , 測試path是否可寫。
    • os.X_OK包含在access()的mode引數中 ,測試path是否可執行。

返回值

如果允許訪問返回 True , 否則返回False。

os.chdir(path)

概述

os.chdir() 方法用於改變當前工作目錄到指定的路徑。

語法

chdir()方法語法格式如下:

os.chdir(path)

引數

  • path-- 要切換到的新路徑。

返回值

如果允許訪問返回 True , 否則返回False。

os.chmod(path, mode)

概述

os.chmod() 方法用於更改檔案或目錄的許可權。

Unix 系統可用。

語法

chmod()方法語法格式如下:

os.chmod(path, mode)

引數

  • path-- 檔名路徑或目錄路徑。

  • flags-- 可用以下選項按位或操作生成, 目錄的讀許可權表示可以獲取目錄裡檔名列表, ,執行許可權表示可以把工作目錄切換到此目錄 ,刪除新增目錄裡的檔案必須同時有寫和執行許可權 ,檔案許可權以使用者id->組id->其它順序檢驗,最先匹配的允許或禁止許可權被應用。

    • stat.S_IXOTH:其他使用者有執行權0o001
    • stat.S_IWOTH:其他使用者有寫許可權0o002
    • stat.S_IROTH:其他使用者有讀許可權0o004
    • stat.S_IRWXO:其他使用者有全部許可權(許可權掩碼)0o007
    • stat.S_IXGRP:組使用者有執行許可權0o010
    • stat.S_IWGRP:組使用者有寫許可權0o020
    • stat.S_IRGRP:組使用者有讀許可權0o040
    • stat.S_IRWXG:組使用者有全部許可權(許可權掩碼)0o070
    • stat.S_IXUSR:擁有者具有執行許可權0o100
    • stat.S_IWUSR:擁有者具有寫許可權0o200
    • stat.S_IRUSR:擁有者具有讀許可權0o400
    • stat.S_IRWXU:擁有者有全部許可權(許可權掩碼)0o700
    • stat.S_ISVTX:目錄裡檔案目錄只有擁有者才可刪除更改0o1000
    • stat.S_ISGID:執行此檔案其程序有效組為檔案所在組0o2000
    • stat.S_ISUID:執行此檔案其程序有效使用者為檔案所有者0o4000
    • stat.S_IREAD:windows下設為只讀
    • stat.S_IWRITE:windows下取消只讀

返回值

該方法沒有返回值。

os.chroot(path)

概述

os.chroot() 方法用於更改當前程序的根目錄為指定的目錄,使用該函式需要管理員許可權。

在 unix 中有效。

語法

chroot()方法語法格式如下:

os.chroot(path);

引數

  • path-- 要設定為根目錄的目錄。

返回值

該方法沒有返回值。

os.close(fd)

概述

os.close() 方法用於關閉指定的檔案描述符 fd。

語法

close()方法語法格式如下:

os.close(fd);

引數

  • fd-- 檔案描述符。

返回值

該方法沒有返回值。

os.getcwd()

概述

os.getcwd() 方法用於返回當前工作目錄。

語法

getcwd()方法語法格式如下:

os.getcwd()

引數

返回值

返回當前程序的工作目錄。

os.listdir(path)

概述

os.listdir() 方法用於返回指定的資料夾包含的檔案或資料夾的名字的列表。這個列表以字母順序。 它不包括.和..即使它在資料夾中。

只支援在 Unix, Windows 下使用。

語法

listdir()方法語法格式如下:

os.listdir(path)

引數

  • path-- 需要列出的目錄路徑

返回值

返回指定路徑下的檔案和資料夾列表。

os.mkdir(path[, mode])

概述

os.mkdir() 方法用於以數字許可權模式建立目錄。預設的模式為 0777 (八進位制)。

如果目錄有多級,則建立最後一級,如果最後一級目錄的上級目錄有不存在的,則會丟擲一個 OSError。

語法

mkdir()方法語法格式如下:

os.mkdir(path[, mode])

引數

  • path-- 要建立的目錄,可以是相對或者絕對路徑。

  • mode-- 要為目錄設定的許可權數字模式

返回值

該方法沒有返回值。

os.open(file, flags[, mode])

概述

os.open() 方法用於開啟一個檔案,並且設定需要的開啟選項,模式引數mode引數是可選的,預設為 0777。

語法

open()方法語法格式如下:

os.open(file, flags[, mode]);

引數

  • file-- 要開啟的檔案

  • flags-- 該引數可以是以下選項,多個使用 "|" 隔開:

    • os.O_RDONLY:以只讀的方式開啟
    • os.O_WRONLY:以只寫的方式開啟
    • os.O_RDWR :以讀寫的方式開啟
    • os.O_NONBLOCK:開啟時不阻塞
    • os.O_APPEND:以追加的方式開啟
    • os.O_CREAT:建立並開啟一個新檔案
    • os.O_TRUNC:開啟一個檔案並截斷它的長度為零(必須有寫許可權)
    • os.O_EXCL:如果指定的檔案存在,返回錯誤
    • os.O_SHLOCK:自動獲取共享鎖
    • os.O_EXLOCK:自動獲取獨立鎖
    • os.O_DIRECT:消除或減少快取效果
    • os.O_FSYNC :同步寫入
    • os.O_NOFOLLOW:不追蹤軟連結
  • mode-- 類似chmod()

返回值

返回新開啟檔案的描述符。

os.read(fd,n)

概述

os.read() 方法用於從檔案描述符 fd 中讀取最多 n 個位元組,返回包含讀取位元組的字串,檔案描述符 fd對應檔案已達到結尾, 返回一個空字串。

在Unix,Windows中有效

語法

read()方法語法格式如下:

os.read(fd,n)

引數

  • fd-- 檔案描述符。

  • n-- 讀取的位元組。

返回值

返回包含讀取位元組的字串

os.remove(path)

概述

os.remove() 方法用於刪除指定路徑的檔案。如果指定的路徑是一個目錄,將丟擲OSError。

在Unix, Windows中有效

語法

remove()方法語法格式如下:

os.remove(path)

引數

  • path-- 要移除的檔案路徑

返回值

該方法沒有返回值

os.removedirs(path)

概述

os.removedirs() 方法用於遞迴刪除目錄。像rmdir(), 如果子資料夾成功刪除, removedirs()才嘗試它們的父資料夾,直到丟擲一個error(它基本上被忽略,因為它一般意味著你資料夾不為空)。

語法

removedirs()方法語法格式如下:

os.removedirs(path)

引數

  • path-- 要移除的目錄路徑

返回值

該方法沒有返回值

os.rename(src, dst)

概述

os.rename() 方法用於命名檔案或目錄,從 src 到 dst,如果dst是一個存在的目錄, 將丟擲OSError。

語法

rename()方法語法格式如下:

os.rename(src, dst)

引數

  • src-- 要修改的目錄名

  • dst-- 修改後的目錄名

返回值

該方法沒有返回值

os.renames(old, new)

概述

os.renames() 方法用於遞迴重新命名目錄或檔案。類似rename()。

語法

renames()方法語法格式如下:

os.renames(old, new)

引數

  • old-- 要重新命名的目錄

  • new--檔案或目錄的新名字。甚至可以是包含在目錄中的檔案,或者完整的目錄樹。

返回值

該方法沒有返回值

os.rmdir(path)

概述

os.rmdir() 方法用於刪除指定路徑的目錄。僅當這資料夾是空的才可以, 否則, 丟擲OSError。

語法

rmdir()方法語法格式如下:

os.rmdir(path)

引數

  • path-- 要刪除的目錄路徑

返回值

該方法沒有返回值

os.path() 模組

菜鳥->
os.pardir

概述

os.pardir() 獲取當前目錄的父目錄(上一級目錄),以字串形式顯示目錄名。

注意:Windows 和 POSIX 返回..。

語法

pardir()方法語法格式如下:

os.pardir

引數

  • 無。

返回值

返回當前目錄的父目錄,預設值為..。