Blair Zajac wrote:
>
> On Oct 26, 2009, at 8:59 PM, Branko Cibej wrote:
>
>> Blair Zajac wrote:
>>>
>>>> # Log the elapsed time.
>>>> - elapsed_time = time.strftime('%H:%M:%S',
>>>> - time.gmtime(time.time() - start_time))
>>>> + elapsed_time = str(datetime.now() - start_time)
>>>>
>>>
>>> You don't need to put the value in str() since you're going to pass it
>>> to the % operator below for a %s interpolation, which calls str() on
>>> it already.
>>>
>>
>> No, he doesn't need to. But there shouldn't be any discernible
>> difference between calling str() here explicitly, and letting the
>> formatter do that later, implicitly. This way it's at least clear what's
>> going on. I do remember reading somewhere that "explicit is better than
>> implicit." :)
>
> It is a tiny bit wasteful, since there will be another str() called on
> elapsed_time.
I don't think I want to look at the Python sources to see if it skips
calling str() for string arguments. :)
> Also, it's an integer value and maybe later you want to add those
> elapsed times (I'm just making this up), so it's possible you'll
> remove the str() later.
>
> Do you always convert something to a string if you the only thing
> you're going to do is print it?
>
> Also, I don't think this is clearer, keeping an int and printing it is
> pretty clear :)
Well of course it's not an int, it's a datetime.timedelta, otherwise a
%d formatter would be more appropriate, no?
I'll have the mauve with vermillion spots, please.
-- Brane
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2411589
Received on 2009-10-27 05:09:16 CET