time.strftime('%m-%d-%Y %H:%m:%S') to log is out of order

davidj411 davidj411 at gmail.com
Tue Jul 21 17:53:29 EDT 2009


On Jul 21, 5:29 pm, Simon Forman <sajmik... at gmail.com> wrote:
> On Jul 21, 5:00 pm, davidj411 <davidj... at gmail.com> wrote:
>
>
>
>
>
> > I am using a recursive function to print the time and a few other
> > things on each pass. ( the function calculates size of file that is
> > being transferred and if not 100 % copied, it waits 20 secs and checks
> > again).
>
> > i would expect the time to be correct anytime it is used:
>
> > <--code below -->>
> > print time.strftime('%m-%d-%Y %H:%m:%S')
> > <--code above -->>
>
> > here is an example of what i am seeing:
>
> > 16:07:16
> > 16:07:36
> > 16:07:56
> > 16:07:16
> > 16:07:36
> > 16:07:56
> > 16:07:16
> > 16:07:36
> > 16:07:56
>
> Your output doesn't match your format string:
>
> In [1]: import time
>
> In [2]: print time.strftime('%m-%d-%Y %H:%m:%S')
> 07-21-2009 17:07:16
>
> There's no way to tell why your output times seem to repeat without
> seeing the code that surrounds your "print time.strftime('%m-%d-%Y %H:
> %m:%S')" line.

sorry, yes, i did manually filter the output.

here is the function:

def log_out(msg,servername='std.out'):
	print msg
	open(log_dir + '\\' + servername + ".log",'a').write(servername + "-"
+ time.strftime('%m-%d-%Y %H:%M:%S') + " " + msg+'\n')

on each pass, it should output the newer time (whether recursive or
not, right) ?



More information about the Python-list mailing list