Path: csiph.com!eternal-september.org!feeder.eternal-september.org!mx02.eternal-september.org!.POSTED!not-for-mail From: "Charles T. Smith" Newsgroups: comp.lang.python Subject: Re: hasattr() or "x in y"? Date: Fri, 11 Mar 2016 22:18:51 -0000 (UTC) Organization: A noiseless patient Spider Lines: 17 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Injection-Date: Fri, 11 Mar 2016 22:18:51 -0000 (UTC) Injection-Info: mx02.eternal-september.org; posting-host="177e1664974e843811fc618206653a33"; logging-data="32159"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/356Ovf4tUXGg/mLwaIf2HthNDO7aPYPY=" User-Agent: Pan/0.133 (House of Butterflies) Cancel-Lock: sha1:Flm4YHzfN2jXHscvGJtZ1/+qkZ0= Xref: csiph.com comp.lang.python:104653 On Fri, 11 Mar 2016 22:00:41 +0000, Grant Edwards wrote: > Since they behave differently, perhaps the question ought to be "which > does what you want to do?" For parsed msgs, I had this: elif hasattr (msg.msgBody, 'request'): It occurred to me that this was less abstruse: elif 'request' in msg.msgBody: and by the way, how would you do that with duck-typing? If I were doing this anew, I probably use a dictionary of functors, but that's not an option anymore.