Martin v. Löwis wrote:

>> I'd say that this explains why it would still make sense to let the code 
>> generator change
>> "x in (a, b, c)" to "x == a or x == b or x == c", as long as a, b, and c are 
>> all integers.
>
> How often does that happen in real code?

don't know, but it happens:

[EMAIL PROTECTED] Python-2.4]$ grep "if.*in *([0-9]" Lib/*.py
Lib/BaseHTTPServer.py:        if self.command != 'HEAD' and code >= 200 and 
code not in (204, 304):
Lib/asyncore.py:        if err in (0, EISCONN):
Lib/mimify.py:    if len(args) not in (0, 1, 2):
Lib/sunau.py:        if nchannels not in (1, 2, 4):
Lib/sunau.py:        if sampwidth not in (1, 2, 4):
Lib/urllib2.py:        if code not in (200, 206):
Lib/urllib2.py:        if (code in (301, 302, 303, 307) and m in ("GET", "HEAD")
Lib/whichdb.py:    if magic in (0x00061561, 0x61150600):
Lib/whichdb.py:    if magic in (0x00061561, 0x61150600):
[EMAIL PROTECTED] Python-2.4]$ grep "if.*in *\[[0-9]" Lib/*.py
Lib/decimal.py:            if value[0] not in [0,1]:
Lib/smtplib.py:        if code not in [235, 503]:

judging from the standard library, "string in string tuple/list" is a lot more 
common.

</F> 



_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to