os模組提供了多數作業系統的功能介面函式。當os模組被匯入後,它會自適應於不同的作業系統平台,根據不同的平台進行相應的操作,在python程式設計時,經常和檔案、目錄打交道,這時就離不了os模組,本節內容將對os模組提供的函式進行詳細的解讀
常用的方法如下表所示:
序號方法及描述
1os.access(path, mode)
檢驗許可權模式
2os.chdir(path)
改變當前工作目錄
3os.chflags(path, flags)
設定路徑的標記為數字標記。
4os.chmod(path, mode)
更改許可權
5os.chown(path, uid, gid)
更改檔案所有者
6os.chroot(path)
改變當前程序的根目錄
7os.close(fd)
關閉檔案描述符 fd
8os.closerange(fd_low, fd_high)
關閉所有檔案描述符,從 fd_low (包含) 到 fd_high (不包含), 錯誤會忽略
9os.dup(fd)
複製檔案描述符 fd
10os.dup2(fd, fd2)
將乙個檔案描述符 fd 複製到另乙個 fd2
11os.fchdir(fd)
通過檔案描述符改變當前工作目錄
12os.fchmod(fd, mode)
改變乙個檔案的訪問許可權,該檔案由引數fd指定,引數mode是unix下的檔案訪問許可權。
13os.fchown(fd, uid, gid)
修改乙個檔案的所有權,這個函式修改乙個檔案的使用者id和使用者組id,該檔案由檔案描述符fd指定。
14os.fdatasync(fd)
強制將檔案寫入磁碟,該檔案由檔案描述符fd指定,但是不強制更新檔案的狀態資訊。
15os.fdopen(fd[, mode[, bufsize]])
通過檔案描述符 fd 建立乙個檔案物件,並返回這個檔案物件
16os.fpathconf(fd, name)
返回乙個開啟的檔案的系統配置資訊。name為檢索的系統配置的值,它也許是乙個定義系統值的字串,這些名字在很多標準中指定(posix.1, unix 95, unix 98, 和其它)。
17os.fstat(fd)
返回檔案描述符fd的狀態,像stat()。
18os.fstatvfs(fd)
返回包含檔案描述符fd的檔案的檔案系統的資訊,像 statvfs()
19os.fsync(fd)
強制將檔案描述符為fd的檔案寫入硬碟。
20os.ftruncate(fd, length)
os.path 模組主要用於獲取檔案的屬性。官網api:
以下是 os.path 模組的幾種常用方法:
方法說明
os.path.abspath(path)
返回絕對路徑
os.path.basename(path)
返回檔名
os.path.commonprefix(list)
返回list(多個路徑)中,所有path共有的最長的路徑
os.path.dirname(path)
返回檔案路徑
os.path.exists(path)
如果路徑 path 存在,返回 true;如果路徑 path 不存在,返回 false。
os.path.lexists
路徑存在則返回true,路徑損壞也返回true
os.path.expanduser(path)
把path中包含的"~"和"~user"轉換成使用者目錄
os.path.expandvars(path)
根據環境變數的值替換path中包含的"$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路徑名
例項
#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
print( os.path.basename('/root/runoob.txt') ) # 返回檔名
print( os.path.dirname('/root/runoob.txt') ) # 返回目錄路徑
print( os.path.split('/root/runoob.txt') ) # 分割檔名與路徑
print( os.path.join('root','test','runoob.txt') ) # 將目錄和檔名合成乙個路徑
執行以上程式輸出結果為:
runoob.txt
/root
('/root', 'runoob.txt')
root/test/runoob.txt
#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
import time
file='/root/runoob.txt' # 檔案路徑
print( os.path.getatime(file) ) # 輸出最近訪問時間
print( os.path.getctime(file) ) # 輸出檔案建立時間
print( os.path.getmtime(file) ) # 輸出最近修改時間
print( time.gmtime(os.path.getmtime(file)) ) # 以struct_time形式輸出最近修改時間
print( os.path.getsize(file) ) # 輸出檔案大小(位元組為單位)
print( os.path.abspath(file) ) # 輸出絕對路徑
print( os.path.normpath(file) ) # 規範path字串形式
執行以上程式輸出結果為:
1539052805.5735736
1539052805.5775735
1539052805.5735736
time.struct_time(tm_year=2018, tm_mon=10, tm_mday=9, tm_hour=2, tm_min=40, tm_sec=5, tm_wday=1, tm_yday=282, tm_isdst=0)
7/root/runoob.txt
/root/runoob.txt
Python模組簡介 os模組
一 模組簡介 python os模組包含普遍的作業系統功能,讓你的程式和平台分開。通常用於返回和開啟指定目錄下的所有檔案和目錄名。二 常用函式 1 os.listdir path 返回指定目錄下的所有檔案和目錄名 folder rt html for movie html in os.listdir...
Python中os模組的簡介
import os 匯入os模組,以下所有功能都在os模組中.os.getcwd 功能 獲取當前目錄的絕對路徑 絕對路徑 window 以碟符開頭,或者以 開頭 linux 以 開頭或者以 開頭 相對路徑 window 以檔案開頭,以.開頭 或者.開頭 linux 與window相同 os.path...
python模組 OS模組
bin env python coding utf 8 import os print os.name 輸出主機平台 print os.getcwd 輸出當前目錄 print os.listdir os.getcwd 輸出當前目錄的檔案 橫向 for i in os.listdir os.getcw...