help to code...

Mark Lawrence breamoreboy at yahoo.co.uk
Thu May 2 11:26:17 EDT 2013


On 02/05/2013 15:59, Chris Angelico wrote:
> On Thu, May 2, 2013 at 11:50 PM, leonardo selmi <l.selmi at icloud.com> wrote:
>> dear python community,
>>
>> i wrote the following program:
>>
>> print str(current_month) + '/' + str(current_day) + '/' + str(current_year)
>> +' '+
>> print str(current_hour) + str(current_minute) + str(current_second)
>>
>> SyntaxError: invalid syntax
>>
>> how can i write the last two lines correctly?
>
> You're doing two separate print statements. Either join them into one
> (if you want it to be one line), or drop the last + on the first line,
> which is causing your syntax error. But there's an even easier way to
> do this: Use formatted printing.
>
> print("%d/%d/%d
> %d%d%d"%(current_month,current_day,current_year,current_hour,current_minute,current_second))
>
> Or, since you're getting those straight from 'now':
>
> print("%d/%d/%d
> %d%d%d"%(now.month,now.day,now.year,now.hour,now.minute,now.second))
>
> I strongly suspect that you want to put delimiters in the time, though
> (colons, perhaps?). It'd be really nice, by the way, if you'd avoid
> the messy American format date with the month first; put the year
> first and it's unambiguous!
>
> ChrisA
>

Better IMHO is to use strftime 
http://docs.python.org/2/library/datetime.html#strftime-and-strptime-behavior 
so the complete code could be

from datetime import datetime
print(datetime.now().strftime('%m/%Y/%d %H %m %S'))

-- 
If you're using GoogleCrap™ please read this 
http://wiki.python.org/moin/GoogleGroupsPython.

Mark Lawrence




More information about the Python-list mailing list