Re: [Edu-sig] Using try / except: any stipulations against routine use?
Isn't this at least as readable, and conceptually simpler?
if ext in res_dict: res_dict[ext] += 1 else: res_dict[ext] = 1
Not arguing against exceptions in general, but in this case?
- Bert -
Yes, it is readable -- but more resource intensive -- since I have to access the dictionary twice, once to see if the key is there, and another to adjust or define the value. If I use try / except, then I will usually only have to access the dictionary a single time, with a second dip only if the key did not exist. A clear win for using exceptions. Incidentally, the .get() one liner also does two dictionary accesses, rather than one (since it can't use the += operator, the get() and the update/define are separate operations.) "Less lines" does not necessarily mean "runs faster." Dictionary lookups are a somewhat expensive operations. -- Vernon
participants (1)
-
Vernon Cole