[Tutor] grrrr!
Christopher Spears
cspears2002 at yahoo.com
Thu Feb 12 19:08:22 EST 2004
I'm writing some code that examines a directory and
creates two lists. One is a list of all the files in
the directory excluding other directories and links
along with the size of the files. The result should
look something like this:
[[['openunit4.pyw', 48L], ['printlongestline.pyw',
214L]...]]
I have suceeded in making this work. The next list
should just contain the largest file in the directory
and look like this:
[[huge_file, 247L]]
Here is the code:
def get_size(n,dir):
import os
files_size = []
biggest = []
files = os.listdir(dir)
files = filter(lambda x:not os.path.isdir(x) and
not os.path.islink(x),files)
for f in range(len(files)):
files_size = files_size +
[[files[f],os.path.getsize(files[f])]]
for x in range(len(files_size)):
s = files_size[x][1]
for b in range(len(files_size)):
if s > files_size[b][1]:
biggest = biggest + [files_size[x]]
print files_size
print biggest
I think I need some sort of second condition in the if
statement, but I have problems comparing s to
biggest[0][1]. I always get an index out of range
error.
Suggestions, anyone?
-Chris
More information about the Tutor
mailing list