On 14 April 2012 16:27, Tom Tucker <tktuc...@gmail.com> wrote: > > Hello all. Any suggestions how I could easily iterate over a list and > print the output 3 across (when possible)? One method I was considering > was removing the recently printed item from the list, checking list length, > etc. Based on the remaining length of the list I would then print X > across. Yah? Is their and easier approach I might be overlooking? > > > For example... > > mylist = ['serverA', 'serverB', 'serverC', 'serverD',' serverE', > 'serverF', 'serverG'] > > > Desired Output > ============ > serverA serverB serverC > serverD serverE serverF > serverG > > _______________________________________________ > Tutor maillist - Tutor@python.org > To unsubscribe or change subscription options: > http://mail.python.org/mailman/listinfo/tutor > > How about something like this
mylist = ['serverA', 'serverB', 'serverC', 'serverD','serverE', 'serverF', 'serverG'] tempstr = "" count = 0 for item in mylist: count += 1 if count == 3: tempstr += (i + "\n") count = 0 else: tempstr += (i + " ") print tempstr The above code prepares an empty string variable, and a count variable. On each iteration, it checks to see if the count is equal to 3. If it is, then it appends the current list element to the string and also adds a newline character("\n"), then the count is reset to 0. If the count isn't 3, it simply appends the current list element along with a space. Hope this helps, Bodsda
_______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor