On Sat, 30 May 2009 12:06:55 +0200, jkv wrote: > I added a few lines to your script, and now it ought to only print files > newer than 3601 seconds (3600 seconds is one hour). ... > #if file newer than one hour print a line > if time_difference < 3601:
That's a potential off-by-one error. That may print files that are older than one hour. Admittedly, they'll be off by less than one second, but if you're going to write code, write correct code. The right test is: if time_difference <= 3600: (and you may even want to deal with files that have a *negative* time difference, e.g. they were created apparently in the future). This is particularly necessary if you use time.time() to generate the current time, since that returns fractions of a second. But even if you don't, it's still the right thing to do: it's defensive programming. Rather than assume that all file systems store timestamps accurate only to a second, assume that some file system, somewhere, will be accurate to fractions of a second, and code accordingly. That way, no matter what the file system does, your code will still do the right thing, and (in this case) it doesn't even cost you anything. -- Steven -- http://mail.python.org/mailman/listinfo/python-list