python os 命令,及判斷文件夾是否存在

使用前 import os導入模塊
 
os模塊:

os.sep     能夠取代操做系統特定的路徑分割符shell

os.linesep  字符串給出當前平臺使用的行終止符。例如,Windows使用'\r\n',Linux使用'\n' 而Mac使用'\r'。windows

os.name         字符串指示你正在使用的平臺。好比對於Windows,它是'nt',而對於Linux/Unix用戶,它是'posix'函數

os.getcwd()   函數獲得當前工做目錄,spa

os.getenv()和os.putenv()   函數分別用來讀取和設置環境變量。操作系統

os.listdir(dirname): 列出dirname下的目錄和文件orm

os.remove()  函數用來刪除一個文件。對象

os.curdir:   返回但前目錄('.')blog

os.chdir(dirname): 改變工做目錄到dirname遞歸

getatime(path):文件或文件夾的最後訪問時間,重新紀元到訪問時的秒數接口

getmtime(path):文件或文件夾的最後修改時間

getctime(path):文件或文件夾的建立時間

 

os.path模塊:

os.path.isfile()和os.path.isdir()函數分別檢驗給出的路徑是一個文件仍是目錄,返回bool值

os.path.exists()函數用來檢驗給出的路徑是否真地存在 返回bool

os.path.getsize(name):得到文件大小,若是name是目錄返回0L 返回long 單位是字節

os.path.abspath(name):得到絕對路徑

os.path.normpath(path):規範path字符串形式, 結果通常狀況下把/變爲//,

os.path.split(name):將name分割成路徑名和文件名,結果爲(路徑名,文件名.文件擴展名)(事實上,若是你徹底使用目錄,它也會將最後一個目錄做爲文件名而分離,同時它不會判斷文件或目錄是否存在)

os.path.splitext(filename):分離文件名與擴展名 結果爲(filename,擴展名) 若是參數爲一個路徑 則返回(路徑,'')

os.path.join(path,name): 鏈接目錄與文件名或目錄 結果爲path/name

os.path.basename(path):返回文件名 實際爲把path的最後一個"/"分割,返回後者。無論參數是一個路徑仍是文件 與os.path.split(name)相同 不一樣之處後者返回兩個值得元組

 os.path.dirname(path): 返回文件路徑 實際爲把path的最後一個"/"分割,返回前者。無論參數是一個路徑仍是文件

os.system()函數用來運行shell命令

 

 os模塊包裝了不一樣操做系統的通用接口,使用戶在不一樣操做系統下,可使用相同的函數接口,返回相同結構的結果。

os.name:返回當前操做系統名稱('posix', 'nt', 'os2', 'mac', 'ce' or 'riscos')

os中定義了一組文件、路徑在不一樣操做系統中的表現形式參數,如

os.sep(文件夾分隔符,windows中是 \ )

os.extsep(擴展名分隔符,windows中是 . )

os.pathsep(目錄分隔符,windows中是 ; )

os.linesep(換行分隔符,windows中是 \r\n )

os中有大量文件、路徑操做的相關函數,如:

listdir(path):列舉目錄下的全部文件

makedir(path):建立文件夾,注:建立已存在的文件夾將異常

makedirs(path):遞歸式的建立文件夾,注:建立已存在的文件夾將異常

remove(filename):刪除一個文件

rmdir(path):刪除一個文件夾,注:刪除非空的文件夾將異常

removedirs(path):遞歸的刪除文件夾,直到有一級的文件夾非空,注:文件夾路徑不能以'\'結束

rename(src,dst):給文件或文件夾更名(能夠改路徑,可是不能覆蓋目標文件)

renames(src,dst):遞歸式的給文件或文件名更名

walk(path):列舉path下的全部文件、文件夾

os中與進程相關的操做,如:

execl(path):運行一個程序來替代當前進程,會阻塞式運行

_exit(n):退出程序

startfile(filename):用與文件關聯的程序運行,關聯程序打開後,當即返回

system(cmd):運行一個程序或命令,會當即返回,並在cmd執行完成後,會返回cmd退出代碼

os.path:在不一樣的操做系統中調用不一樣的模塊,是一個可import的模塊,這個模塊中提供不少有用的操做:

abspath(path):返回path的絕對路徑,若path已是絕對路徑了,則保持。

basename(path):返回path中的文件名。

commonprefix(list):返回list中的統一前綴,用於得到一組字符串的左起相同的內容

dirname(path):返回path中的文件夾部分,結果不包含'\'

exists(path):文件或文件夾是否存在

getatime(path):文件或文件夾的最後訪問時間,重新紀元到訪問時的秒數

getmtime(path):文件或文件夾的最後修改時間

getctime(path):文件或文件夾的建立時間

getsize(path):文件或文件夾的大小,如果文件夾返回0

isabs(path):返回是不是絕對路徑

isfile(path):返回是不是文件路徑

isdir(path):返回是不是文件夾路徑

islink(path):返回是不是快捷方式

join(path1,path2,...):將path進行組合,若其中有絕對路徑,則以前的path將被刪除

normcase(path):轉換路徑中的間隔符

normpath(path):轉換路徑爲系統可識別的路徑

realpath(path):轉換路徑爲絕對路徑

split(path):將路徑分解爲(文件夾,文件名)

splitext(path):將路徑分解爲(其他部分,.擴展名),若文件名中沒有擴展名,擴展名部分爲空字符串

在操做與系統不支持的對象時,拋出OSError異常。

 
判斷文件夾是否存在:
 
>>> import os
>>> os.path.exists('d:/assist')
True
>>> os.path.exists('d:/assist/getTeacherList.py')
True
>>> os.path.isfile('d:/assist')
False
>>> os.path.isfile('d:/assist/getTeacherList.py')
True
>>> os.makedirs('d:/assist/set')
>>> os.path.exists('d:/assist/set')
True
 
判斷文件夾是否爲空:
使用os.listdir)命令
>>>workpath='目錄'
>>>if not os.list(workpath):
>>>  print '目錄爲空'
 
 
遍歷文件夾
參考
>>> def Test2(rootDir):
... for lists in os.listdir(rootDir):
... path = os.path.join(rootDir, lists)
... print path
... if os.path.isdir(path):
... Test2(path)
...
>>> Test2("F:\zr")
相關文章
相關標籤/搜索