1. 程式人生 > >python 遍歷文件夾

python 遍歷文件夾

sep begin ber -- .get 目錄文件 不包含 博客 links

參考博客:http://www.cnblogs.com/lincj/p/5617605.html

一、os.walk() 

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

  可以得到一個三元tupple(dirpath, dirnames, filenames),

  第一個為起始路徑,第二個為起始路徑下的文件夾,第三個是起始路徑下的文件。

  dirpath 是一個string,代表目錄的路徑,

  dirnames 是一個list,包含了dirpath下所有子目錄的名字。

  filenames 是一個list,包含了非目錄文件的名字。

  這些名字不包含路徑信息,如果需要得到全路徑,需要使用os.path.join(dirpath, name)

二、枚舉文件夾下所有文件

import os


# 枚舉dirPath目錄下的所有文件

def main(dirname):
    # begin
    for root, dirs, files in os.walk(dirname):
        print(root)
        print(dirs)
        print(files)
        for dir in dirs:
            print(os.path.join(root, dir))
        for file in files:
            print(os.path.join(root, file))
        print(‘----------------‘)


if __name__ == ‘__main__‘:
    main(r‘G:\ftp\home\bigberg‘)

   

三、遍歷文件夾獲取大小 

def get_used_size(dirname):
    """
        遍歷文件夾獲取文件大小

    """
    size = 0
    for dir_path, dirs, files in os.walk(dirname):
        # size += sum([os.path.getsize(os.sep.join([dir_path, name])) for name in files])
        for name in files:
            size += os.path.getsize(os.sep.join([dir_path, name]))
    return size

  

python 遍歷文件夾