Rodrick Brown wrote:
if m.group(1) not in od.keys():
od[m.group(1)] = int(m.group(2))
else:
od[m.group(1)] += int(od.get(m.group(1),0))
Others have pointed out what's wrong with this, but here's
a general tip: Don't repeat complicated subexpressions
such as m.group(1). Doing so makes the code hard to read
and therefore hard to spot errors in (and less efficient
as well, although that's a secondary consideration).
Instead, pull them out and give them meaningful names.
Doing so with the above code gives:
name = m.group(1)
value = m.group(2)
if name not in od.keys():
od[name] = int(value)
else:
od[name] += int(od.get(name, 0))
Now it's a lot eaier to see that you haven't used the
value anywhere in the second case, which should alert
you that something isn't right.
--
Greg
--
https://mail.python.org/mailman/listinfo/python-list