In psudocode: #map the files to their time. filesByTimes = {} for each in filesInDirectory: filesByTimes[os.stat(each).st_mtime]=each
#find the largest time times = filesByTimes.keys() sort(times) #retrieve the file that goes with it latestFile = filesByTimes[times[-1]] --Michael On 11/5/07, Fiyawerx <[EMAIL PROTECTED]> wrote: > > I'm working on a small script that so far, using the xlrd module, ( > http://www.lexicon.net/sjmachin/xlrd.html) will parse all the files in a > given directory for a xls file with a specific worksheet. This way, if the > file names change, or people don't save the spreadsheet with the right name, > my script will still be able to locate the correct files to use for it's > data source out of multiple files / versions. So far what I have sort of > goes like this : > > import os > import xlrd > > data = {} > > #path may be set externally at some point > data['path'] = 'mypath_to_program' > > os.chdir(data['path']) > > data['xls_files'] = [ file for file in os.listdir('./') if '.xls' in file > ] > > first_files = [ file for file in data['xls_files'] if u'First Worksheet' > in xlrd.open_workbook(file).sheet_names() ] > data['first_file'] = ?? > > second_files = [ file for file in data['xls_files'] if u'Second Worsheet' > in xlrd.open_workbook(file).sheet_names() ] > data['second_file'] = ?? > > This is where I get stuck, I'm trying to figure out how, from the files > that match, I can select the file with the most current time stamp and use > that as my main data file. > I know I can get the modification time with os.stat(file).st_mtime, but > I'm not sure how I can sort my returns by this, to get just the most current > version. Any help / thoughts would be appreciated. I'm going to be looking > for other worksheets as well that might be in other xls's, for example > 'Second Worksheet' also, but I was just trying to get the 'first_files' > working first. Instead of opening them each time, should I construct some > type of data that stores the file, it's worksheets, and its modification > times for each file found, and then just parse that list? like maybe change > my xls_files around to not just be a list of names? > > _______________________________________________ > Tutor maillist - Tutor@python.org > http://mail.python.org/mailman/listinfo/tutor > > -- Michael Langford Phone: 404-386-0495 Consulting: http://www.TierOneDesign.com/
_______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor