On 3/19/06, John Fouhy <[EMAIL PROTECTED]> wrote:
> What you're doing is called "flattening" a list. You can do it with a
> list comprehension:
>
> >>> foo = [[1,2,3], [4,5,6], [7,8,9]]
> >>> [x for y in foo for x in y]
> [1, 2, 3, 4, 5, 6, 7, 8, 9]
Ah yes, that was the sort of thing I was thinking of.
> If you want to sum, you could also use a generator expression
> (requires Python 2.4):
I am on 2.3.5 so I can do sum([x for y in foo for x in y])
So now looking at both your and Karl's ways, how do I catch
exceptions. My current (working) code looks like this:
def fleetHealth(self):
"""Iterate through each square to see if the whole fleet has been sunk."""
s = 0
for c in self.ranks:
for b in c:
try:
s += b.contents.size()
except:
pass
return s
I guess this could be significantly refactored! But... readability counts!
S.
_______________________________________________
Tutor maillist - [email protected]
http://mail.python.org/mailman/listinfo/tutor