Nested lists or conditional logic?
mike beck
cmichaelbeck at hotmail.com
Wed Jan 28 12:56:27 EST 2004
this is not all complex, but as a noob i'm having a hard time getting
my head around it.
i have a list of items. i need to print the items in batches of x,
with a summary line after each complete or partial batch, and a total
line at the end of the job.
if the list looks like ['line1','line2','line3'], and my ITEMSINBATCH
= 1, the output should look like this:
line1
---summary line---
line2
---summary line---
line3
---summary line---
---total line---
if ITEMSINBATCH = 2, the output should look like this:
line1
line2
---summary line---
line3
---summary line---
---total line---
i've done the following, which works, but it seems like there must be
a better/simpler/faster way to do this with nested loops. ideas?
# ---------------------Begin code---------------------
ITEMSINBATCH = 1;
ARBITRARYNUM = 51;
# create a list to work with
myList = ['1']*ARBITRARYNUM;
for i in range( len(myList) ):
# avoid starting at 0
count = i + 1;
print "The item is:",myList[i],'\t',count;
# ensure that the batch summary line is printed every ITEMSINBATCH
# times but not if the number of items is evenly divisible by
# ITEMSINBATCH, in which case both the inner print and the outer
# print would execute and we'd get consecutive batch summary lines
if ( (count) % ITEMSINBATCH ) is 0 and count != len(myList)::
print "-----Add batch summary line-----";
# add a final batch line for those trailing items
print "------Add batch summary line------And BTW, i is", count;
# and add the final summary line
print "------Add file summary------";
# ---------------------End code---------------------
TIA,
mike
More information about the Python-list
mailing list