Python os.walk() 方法

Python File(文件) 方法 Python OS 文件/目錄方法


概述

os.walk() 方法用于通過(guò)在目錄樹種游走輸出在目錄中的文件名,向上或者向下。

在Unix,Windows中有效。

語(yǔ)法

walk()方法語(yǔ)法格式如下:

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

參數(shù)

  • top -- 根目錄下的每一個(gè)文件夾(包含它自己), 產(chǎn)生3-元組 (dirpath, dirnames, filenames)【文件夾路徑, 文件夾名字, 文件名】。

  • topdown --可選,為True或者沒有指定, 一個(gè)目錄的的3-元組將比它的任何子文件夾的3-元組先產(chǎn)生 (目錄自上而下)。如果topdown為 False, 一個(gè)目錄的3-元組將比它的任何子文件夾的3-元組后產(chǎn)生 (目錄自下而上)。

  • onerror -- 可選,是一個(gè)函數(shù); 它調(diào)用時(shí)有一個(gè)參數(shù), 一個(gè)OSError實(shí)例。報(bào)告這錯(cuò)誤后,繼續(xù)walk,或者拋出exception終止walk。

  • followlinks -- 設(shè)置為 true,則通過(guò)軟鏈接訪問(wèn)目錄。

返回值

該方法沒有返回值。

實(shí)例

以下實(shí)例演示了 walk() 方法的使用:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import os
for root, dirs, files in os.walk(".", topdown=False):
    for name in files:
        print(os.path.join(root, name))
    for name in dirs:
        print(os.path.join(root, name))

執(zhí)行以上程序輸出結(jié)果為:

./.bash_logout
./amrood.tar.gz
./.emacs
./httpd.conf
./www.tar.gz
./mysql.tar.gz
./test.py
./.bashrc
./.bash_history
./.bash_profile
./tmp
./tmp/test.py

Python File(文件) 方法 Python OS 文件/目錄方法