1.獲取當(dāng)前路徑:os.getcwd();
2.獲取指定目錄文件/文件夾列表:os.listdir(path)
/////////////////////////////////////////////////////////////////
順便粘一點(diǎn)相關(guān)的東東
////////////////////////////////////////////////////////////////
os.walk()
函數(shù)聲明:walk(top,topdown=True,onerror=None)
1>參數(shù)top表示需要遍歷的目錄樹(shù)的路徑
2>參數(shù)topdown的默認(rèn)值是"True",表示首先返回目錄樹(shù)下的文件,然后在遍歷目錄樹(shù)的子目錄.Topdown的值為"False"時(shí),則表示先遍歷目錄樹(shù)的子目錄,返回子目錄下的文件,最后返回根目錄下的文件
3>參數(shù)onerror的默認(rèn)值是"None",表示忽略文件遍歷時(shí)產(chǎn)生的錯(cuò)誤.如果不為空,則提供一個(gè)自定義函數(shù)提示錯(cuò)誤信息后繼續(xù)遍歷或拋出異常中止遍歷
4>該函數(shù)返回一個(gè)元組,該元組有3個(gè)元素,這3個(gè)元素分別表示每次遍歷的路徑名,目錄列表和文件列表
os,walk()實(shí)例:
import os
def VisitDir(path):
for root,dirs,files in os.walk(path):
for filespath in files:
print os.path.join(root,filespath)
if __name__=="__main__":
path="/root"
VisitDir(path)
os.path.walk()
函數(shù)聲明:walk(top,func,arg)
1>參數(shù)top表示需要遍歷的目錄樹(shù)的路徑
2>參數(shù)func表示回調(diào)函數(shù),對(duì)遍歷路徑進(jìn)行處理.所謂回調(diào)函數(shù),是作為某個(gè)函數(shù)的參數(shù)使用,當(dāng)某個(gè)時(shí)間觸發(fā)時(shí),程序?qū)⒄{(diào)用定義好的回調(diào)函數(shù)處理某個(gè)任務(wù).回調(diào)函數(shù)必須提供3個(gè)參數(shù):第1個(gè)參數(shù)為walk()的參數(shù)tag,第2個(gè)參數(shù)表示目錄列表,第3個(gè)參數(shù)表示文件列表
3>參數(shù)arg是傳遞給回調(diào)參數(shù)func的元組.回調(diào)函數(shù)的一個(gè)參數(shù)必須是arg,為回調(diào)函數(shù)提供處理參數(shù).參數(shù)arg可以為空
os.path.walk()實(shí)例:
import os,os.path
def VisitDir(arg,dirname,names):
for filespath in name:
print os.path.join(dirname,filespath)
if __name__=="__main__":
path="/root"
os.path.walk(path,VisitDir,())
os.path.walk()與os.walk()產(chǎn)生的文件名列表并不相同.os.path.walk()產(chǎn)生目錄樹(shù)下的目錄路徑和文件路徑,而os.walk()只產(chǎn)生文件路徑
如下面的例程:
1 # -*- coding: utf-8 -*-
2 import os
3 for root, dirs, files in os.walk('/media/cdrom0'):
4 open('mycd.cdc', 'a').write("%s %s %s" % (root,dirs,files))
完成的功能是講/media/cdrom0下的目錄文件寫(xiě)入到mycd.cdc中。
代碼解釋?zhuān)?br>1. 聲明是 utf-8 編碼文本;
2. 引入了 os 模塊;
3. 使用os.walk() 掃描光盤(pán),并返回三個(gè)對(duì)象;
4. 使用open()打開(kāi)mycd.cdc 文件對(duì)象,并聲明成追加模式,逐行記錄以上三個(gè)對(duì)象。