ptyhon中如何获取处理目录和文件信息
1.
# retrieve the file information from a selected folder
2.
# sort the files by last modified date/time and display in order newest file first
3.
# tested with Python24 vegaseat 21jan2006
4.
5.
import os, glob, time
6.
7.
# use a folder you have ...
8.
root = 'D:\\Zz1\\Cartoons\\' # one specific folder
9.
#root = 'D:\\Zz1\\*' # all the subfolders too
10.
11.
print '-'*60 # just vanity
12.
13.
date_file_list = []
14.
for folder in glob.glob(root):
15.
print "folder =", folder
16.
# select the type of file, for instance *.jpg or all files *.*
17.
for file in glob.glob(folder + '/*.*'):
18.
# retrieves the stats for the current file as a tuple
19.
# (mode, ino, dev, nlink, uid, gid, size, atime, mtime, ctime)
20.
# the tuple element mtime at index 8 is the last-modified-date
21.
stats = os.stat(file)
22.
# create tuple (year yyyy, month(1-12), day(1-31), hour(0-23), minute(0-59), second(0-59),
23.
# weekday(0-6, 0 is monday), Julian day(1-366), daylight flag(-1,0 or 1)) from seconds since epoch
24.
# note: this tuple can be sorted properly by date and time
25.
lastmod_date = time.localtime(stats[8])
26.
#print image_file, lastmod_date # test
27.
# create list of tuples ready for sorting by date
28.
date_file_tuple = lastmod_date, file
29.
date_file_list.append(date_file_tuple)
30.
31.
#print date_file_list # test
32.
33.
date_file_list.sort()
34.
date_file_list.reverse() # newest mod date now first
35.
36.
print "%-40s %s" % ("filename:", "last modified:")
37.
for file in date_file_list:
38.
# extract just the filename
39.
folder, file_name = os.path.split(file[1])
40.
# convert date tuple to MM/DD/YYYY HH:MM:SS format
41.
file_date = time.strftime("%m/%d/%y %H:%M:%S", file[0])
42.
print "%-40s %s" % (file_name, file_date)