En Fri, 08 Feb 2008 22:45:06 -0200, ki lo <[EMAIL PROTECTED]> escribió:
> I have type variable which may have been set to 'D' or 'E' > > Now, which one of following statements are more efficient > > if type =='D' or type == 'E': > > or > > if re.search("D|E", type): > > Please let me know because the function is going to called 10s of > millions > of times. Use the timeit module to measure the various alternatives: http://docs.python.org/lib/module-timeit.html Remember to test both cases, success and failure. I bet that using re is terribly slow. Note: better to avoid `type` as a variable name, it's a builtin type itself. python -m timeit -s "typ='E'" "typ =='D' or typ == 'E'" python -m timeit -s "typ='X'" "typ =='D' or typ == 'E'" python -m timeit -s "typ='E'" "typ in 'DE'" python -m timeit -s "typ='E';valid='DE'" "typ in valid" python -m timeit -s "typ='E';valid=tuple('DE')" "typ in valid" python -m timeit -s "typ='E';valid=set('DE')" "typ in valid" valid.find(typ)>=0 re.match("D|E", typ) -- Gabriel Genellina -- http://mail.python.org/mailman/listinfo/python-list