# -*- coding: utf-8 -*- #遍历文件夹,并将文件夹中的文件和文件夹打印出来,同时标记出类型(文件还是文件夹)、文件大小、文件修改日期。 #!/usr/bin/python #coding:utf8 import os import os.path import time def GetCurPathInfo(): CurPath = os.getcwd() #获取当前目录名 ChildrenList = os.listdir(CurPath) #指定目录包含所有内容的名称 #打印当前目录的文件和文件夹信息 rootdir = CurPath # 指明被遍历的文件夹 #三个参数:分别返回1.父目录 2.所有文件夹名字(不含路径) 3.所有文件名字 for parent,dirnames,filenames in os.walk(rootdir): for dirname in dirnames: #输出文件夹信息 print "parent is:" + parent print "dirname is" + dirname for filename in filenames: #输出文件信息 print "parent is:" + parent print "filename is:" + filename print "the full name of the file is:" + os.path.join(parent,filename) #输出文件路径信息 InfoDict = dict() for Name in ChildrenList: tempInfo = os.stat(Name) #指定文件或目录的信息 #需要注意的是时间的转换,由于os.stat()返回的结果是距初始时间点的秒数,所以格式化前需用库函数time.ctime()转换。 tempDict = dict( [('Size', tempInfo.st_size),\ ('CreateTime',time.ctime(tempInfo.st_ctime)),\ ('ChangeTime',time.ctime(tempInfo.st_mtime))]) InfoDict[Name] = tempDict for Record in InfoDict: #r是为了打印原始字符串,屏蔽转义,也就是说输出\n而不是换行。 info = r'%20s %8s KB %25s %25s' % (Record, InfoDict[Record]['Size'],\ InfoDict[Record]['CreateTime'],\ InfoDict[Record]['ChangeTime']) print(info) def test(): GetCurPathInfo() if __name__ == '__main__': test()