Python--os模塊

  在自動化測試中,常常須要查找操做文件,好比說查找配置文件(從而讀取配置文件的信息),查找測試報告(從而發送測試報告郵件),常常要對大量文件和大量路徑進行操做,這個時候就須要用到os模塊,使用前先導入os模塊,即:import os(該模塊是系統自帶的,直接導入就能夠)html

 

舉例說明幾個經常使用的OS模塊下的方法python

 

os.getcwd()  獲取當前工做目錄windows

 

 

os.chdir()切換工做目錄async

 

 

os.listdir() 返回指定目錄下的文件名,注:返回的是以列表形式函數

 

os.path.join() 鏈接目錄或文件名測試

 

序號 方法及描述
1

os.access(path, mode)ui


檢驗權限模式
2

os.chdir(path)spa


改變當前工做目錄
3

os.chflags(path, flags)unix


設置路徑的標記爲數字標記。
4

os.chmod(path, mode)code


更改權限
5

os.chown(path, uid, gid)


更改文件全部者
6

os.chroot(path)


改變當前進程的根目錄
7

os.close(fd)


關閉文件描述符 fd
8

os.closerange(fd_low, fd_high)


關閉全部文件描述符,從 fd_low (包含) 到 fd_high (不包含), 錯誤會忽略
9

os.dup(fd)


複製文件描述符 fd
10

os.dup2(fd, fd2)


將一個文件描述符 fd 複製到另外一個 fd2
11

os.fchdir(fd)


經過文件描述符改變當前工做目錄
12

os.fchmod(fd, mode)


改變一個文件的訪問權限,該文件由參數fd指定,參數mode是Unix下的文件訪問權限。
13

os.fchown(fd, uid, gid)


修改一個文件的全部權,這個函數修改一個文件的用戶ID和用戶組ID,該文件由文件描述符fd指定。
14

os.fdatasync(fd)


強制將文件寫入磁盤,該文件由文件描述符fd指定,可是不強制更新文件的狀態信息。
15

os.fdopen(fd[, mode[, bufsize]])


經過文件描述符 fd 建立一個文件對象,並返回這個文件對象
16

os.fpathconf(fd, name)


返回一個打開的文件的系統配置信息。name爲檢索的系統配置的值,它也許是一個定義系統值的字符串,這些名字在不少標準中指定(POSIX.1, Unix 95, Unix 98, 和其它)。
17

os.fstat(fd)


返回文件描述符fd的狀態,像stat()。
18

os.fstatvfs(fd)


返回包含文件描述符fd的文件的文件系統的信息,Python 3.3 相等於 statvfs()。
19

os.fsync(fd)


強制將文件描述符爲fd的文件寫入硬盤。
20

os.ftruncate(fd, length)


裁剪文件描述符fd對應的文件, 因此它最大不能超過文件大小。
21

os.getcwd()


返回當前工做目錄
22

os.getcwdu()


返回一個當前工做目錄的Unicode對象
23

os.isatty(fd)


若是文件描述符fd是打開的,同時與tty(-like)設備相連,則返回true, 不然False。
24

os.lchflags(path, flags)


設置路徑的標記爲數字標記,相似 chflags(),可是沒有軟連接
25

os.lchmod(path, mode)


修改鏈接文件權限
26

os.lchown(path, uid, gid)


更改文件全部者,相似 chown,可是不追蹤連接。
27

os.link(src, dst)


建立硬連接,名爲參數 dst,指向參數 src
28

os.listdir(path)


返回path指定的文件夾包含的文件或文件夾的名字的列表。
29

os.lseek(fd, pos, how)


設置文件描述符 fd當前位置爲pos, how方式修改: SEEK_SET 或者 0 設置從文件開始的計算的pos; SEEK_CUR或者 1 則從當前位置計算; os.SEEK_END或者2則從文件尾部開始. 在unix,Windows中有效
30

os.lstat(path)


像stat(),可是沒有軟連接
31

os.major(device)


從原始的設備號中提取設備major號碼 (使用stat中的st_dev或者st_rdev field)。
32

os.makedev(major, minor)


以major和minor設備號組成一個原始設備號
33

os.makedirs(path[, mode])


遞歸文件夾建立函數。像mkdir(), 但建立的全部intermediate-level文件夾須要包含子文件夾。
34

os.minor(device)


從原始的設備號中提取設備minor號碼 (使用stat中的st_dev或者st_rdev field )。
35

os.mkdir(path[, mode])


以數字mode的mode建立一個名爲path的文件夾.默認的 mode 是 0777 (八進制)。
36

os.mkfifo(path[, mode])


建立命名管道,mode 爲數字,默認爲 0666 (八進制)
37

os.mknod(filename[, mode=0600, device])
建立一個名爲filename文件系統節點(文件,設備特別文件或者命名pipe)。

38

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


打開一個文件,而且設置須要的打開選項,mode參數是可選的
39

os.openpty()


打開一個新的僞終端對。返回 pty 和 tty的文件描述符。
40

os.pathconf(path, name)


返回相關文件的系統配置信息。
41

os.pipe()


建立一個管道. 返回一對文件描述符(r, w) 分別爲讀和寫
42

os.popen(command[, mode[, bufsize]])


從一個 command 打開一個管道
43

os.read(fd, n)


從文件描述符 fd 中讀取最多 n 個字節,返回包含讀取字節的字符串,文件描述符 fd對應文件已達到結尾, 返回一個空字符串。
44

os.readlink(path)


返回軟連接所指向的文件
45

os.remove(path)


刪除路徑爲path的文件。若是path 是一個文件夾,將拋出OSError; 查看下面的rmdir()刪除一個 directory。
46

os.removedirs(path)


遞歸刪除目錄。
47

os.rename(src, dst)


重命名文件或目錄,從 src 到 dst
48

os.renames(old, new)


遞歸地對目錄進行改名,也能夠對文件進行改名。
49

os.rmdir(path)


刪除path指定的空目錄,若是目錄非空,則拋出一個OSError異常。
50

os.stat(path)


獲取path指定的路徑的信息,功能等同於C API中的stat()系統調用。
51

os.stat_float_times([newvalue])
決定stat_result是否以float對象顯示時間戳

52

os.statvfs(path)


獲取指定路徑的文件系通通計信息
53

os.symlink(src, dst)


建立一個軟連接
54

os.tcgetpgrp(fd)


返回與終端fd(一個由os.open()返回的打開的文件描述符)關聯的進程組
55

os.tcsetpgrp(fd, pg)


設置與終端fd(一個由os.open()返回的打開的文件描述符)關聯的進程組爲pg。
56

os.tempnam([dir[, prefix]])


Python3 中已刪除。返回惟一的路徑名用於建立臨時文件。
57

os.tmpfile()


Python3 中已刪除。返回一個打開的模式爲(w+b)的文件對象 .這文件對象沒有文件夾入口,沒有文件描述符,將會自動刪除。
58

os.tmpnam()


Python3 中已刪除。爲建立一個臨時文件返回一個惟一的路徑
59

os.ttyname(fd)


返回一個字符串,它表示與文件描述符fd 關聯的終端設備。若是fd 沒有與終端設備關聯,則引起一個異常。
60

os.unlink(path)


刪除文件路徑
61

os.utime(path, times)


返回指定的path文件的訪問和修改的時間。
62

os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])


輸出在文件夾中的文件名經過在樹中游走,向上或者向下。
63

os.write(fd, str)


寫入字符串到文件描述符 fd中. 返回實際寫入的字符串長度
64

os.path 模塊


獲取文件的屬性信息。
65

os.pardir()


獲取當前目錄的父目錄,以字符串形式顯示目錄名。

 

os.path 模塊主要用於獲取文件的屬性。

如下是 os.path 模塊的幾種經常使用方法:

方法 說明
os.path.abspath(path) 返回絕對路徑
os.path.basename(path) 返回文件名
os.path.commonprefix(list) 返回list(多個路徑)中,全部path共有的最長的路徑
os.path.dirname(path) 返回文件路徑
os.path.exists(path) 路徑存在則返回True,路徑損壞返回False
os.path.lexists 路徑存在則返回True,路徑損壞也返回True
os.path.expanduser(path) 把path中包含的"~"和"~user"轉換成用戶目錄
os.path.expandvars(path) 根據環境變量的值替換path中包含的"$name"和"${name}"
os.path.getatime(path) 返回最近訪問時間(浮點型秒數)
os.path.getmtime(path) 返回最近文件修改時間
os.path.getctime(path) 返回文件 path 建立時間
os.path.getsize(path) 返回文件大小,若是文件不存在就返回錯誤
os.path.isabs(path) 判斷是否爲絕對路徑
os.path.isfile(path) 判斷路徑是否爲文件
os.path.isdir(path) 判斷路徑是否爲目錄
os.path.islink(path) 判斷路徑是否爲連接
os.path.ismount(path) 判斷路徑是否爲掛載點
os.path.join(path1[, path2[, ...]]) 把目錄和文件名合成一個路徑
os.path.normcase(path) 轉換path的大小寫和斜槓
os.path.normpath(path) 規範path字符串形式
os.path.realpath(path) 返回path的真實路徑
os.path.relpath(path[, start]) 從start開始計算相對路徑
os.path.samefile(path1, path2) 判斷目錄或文件是否相同
os.path.sameopenfile(fp1, fp2) 判斷fp1和fp2是否指向同一文件
os.path.samestat(stat1, stat2) 判斷stat tuple stat1和stat2是否指向同一個文件
os.path.split(path) 把路徑分割成 dirname 和 basename,返回一個元組
os.path.splitdrive(path) 通常用在 windows 下,返回驅動器名和路徑組成的元組
os.path.splitext(path) 分割路徑中的文件名與拓展名
os.path.splitunc(path) 把路徑分割爲加載點與文件
os.path.walk(path, visit, arg) 遍歷path,進入每一個目錄都調用visit函數,visit函數必須有3個參數(arg, dirname, names),dirname表示當前目錄的目錄名,names表明當前目錄下的全部文件名,args則爲walk的第三個參數
os.path.supports_unicode_filenames 設置是否支持unicode路徑名
相關文章
相關標籤/搜索