Format the ouput in my python code
Dave Angel
d at davea.name
Mon Nov 21 09:34:14 EST 2011
On 11/21/2011 09:27 AM, Dave Angel wrote:
> On 11/21/2011 07:13 AM, sl33k wrote:
>> I am printing the numbers from 1 to 100. In that, I want to display
>> multiples of 3,5 and of both as mulof3, mul0f5 and mulof3and5
>> respectively.
>>
>> I am getting the output I want but I would like to format the output
>> to print only 10 number per line. How do I go about doing this?
>>
>> for i in range(1, 101):
>> if i % 3 == 0:
>> if i % 5 == 0:
>> print 'mulof3and5',
>> else:
>> print 'mulof3',
>> elif i % 5 == 0:
>> print 'mulof5',
>> else:
>> print i
>>
> Change that loop into a generator, having it return values rather than
> printing them. Then call that generator in a for-loop, something like:
>
> for index, val in enumerate(mygen):
> print val,
> if not index%10: print
>
>
Oops. That was untested, and it probably wasn't quite what you wanted.
More likely something like (untested):
for index, val in enumerate(mygen):
print val,
if not ((index+1)%10): print
--
DaveA
More information about the Python-list
mailing list