中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python中怎么調用遍歷目錄樹的函數

發布時間:2021-07-14 15:04:00 來源:億速云 閱讀:165 作者:Leah 欄目:編程語言

本篇文章為大家展示了Python中怎么調用遍歷目錄樹的函數,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

Python遍歷目錄樹下面的函數調用

os.path.walk(root, myfunc, arg)

將遍歷root目錄樹;然后,對每個目錄名dirname分別調用myfunc(arg, dirname, files)即可,這里參數files是dir中的文件名列表(可通過調用os.listdir(dirname)來獲得);arg是用戶從調用代碼中傳遞來的參數。對于UNIX操作系統用戶來說,Python語言中跨平臺的os.path.walk相當于Unix命令find。

在解釋os.path.walk的用法的時候,人們常使用寫出主目錄中所有子目錄內的文件的名稱為例進行說明。當然,我們也可以在一個交互式的Python命令行中使用下列代碼段來體會os.path.walk的使用:

def ls(arg, dirname, files):  print dirname, ’has the files’, files  os.path.walk(os.environ[’HOME’], ls, None)

本例中關于Python遍歷目錄樹,參數arg并非必需,所以在os.path.walk調用中讓其取值為None即可。為了列出主目錄中所有大于1Mb的文件,可以使用下面的代碼:

def checksize1(arg, dirname, files):  for file in files:  filepath = os.path.join(dirname, file)  if os.path.isfile(filepath):  size = os.path.getsize(filepath)  if size > 1000000:  sizesize_in_Mb = size/1000000.0  arg.append((size_in_Mb, filename))  bigfiles = []  root = os.environ[’HOME’]  os.path.walk(root, checksize1, bigfiles)  for size, name in bigfiles:  print name, ’大小為’, size, ’Mb’

現在,我們使用arg來建立一個數據結構,這里是一個2元組構成的列表,其中每個2元組存放文件的尺寸(以MB為單位)和完整的文件路徑。如果用于所有目錄的函數調用中都要更改arg的話,那么arg必須是一個可變的數據結構,即允許適當地進行修改。

上述內容就是Python中怎么調用遍歷目錄樹的函數,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

军事| 吉隆县| 富宁县| 于都县| 吴川市| 滨州市| 博爱县| 连江县| 阳泉市| 芒康县| 泰安市| 清徐县| 荥阳市| 清涧县| 抚州市| 邵武市| 都匀市| 广西| 新邵县| 云龙县| 南皮县| 高密市| 商都县| 札达县| 萝北县| 古浪县| 海原县| 米泉市| 宜良县| 中方县| 济阳县| 仙游县| 长治市| 五家渠市| 墨脱县| 柘荣县| 广东省| 东海县| 扎赉特旗| 顺义区| 安丘市|