Path: csiph.com!usenet.pasdenom.info!weretis.net!feeder1.news.weretis.net!feeder.erje.net!eu.feeder.erje.net!newsfeed.xs4all.nl!newsfeed3a.news.xs4all.nl!xs4all!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.080 X-Spam-Evidence: '*H*': 0.84; '*S*': 0.00; 'bold': 0.09; 'orange': 0.09; 'cc:addr:python-list': 0.11; 'jan': 0.12; '24,': 0.16; 'from:addr:rosuav': 0.16; 'from:name:chris angelico': 0.16; 'hack,': 0.16; 'think?': 0.16; 'sat,': 0.16; 'wrote:': 0.18; 'bit': 0.19; 'trying': 0.19; 'properly': 0.19; '>>>': 0.22; 'cc:addr:python.org': 0.22; 'color,': 0.24; 'looks': 0.24; 'cc:2**0': 0.24; 'this:': 0.26; 'header:In-Reply-To:1': 0.27; 'am,': 0.29; "doesn't": 0.30; 'primarily': 0.30; 'message- id:@mail.gmail.com': 0.30; 'are.': 0.31; 'class': 0.32; 'another': 0.32; 'sense': 0.34; 'could': 0.34; 'etc': 0.35; 'but': 0.35; 'received:google.com': 0.35; 'there': 0.35; 'example,': 0.37; 'rather': 0.38; 'expect': 0.39; 'does': 0.39; 'called': 0.40; 'black': 0.61; 'color': 0.61; 'simply': 0.61; "you're": 0.61; 'making': 0.63; 'more': 0.64; 'here': 0.66; 'between': 0.67; 'surprise': 0.74; '2015': 0.84; 'console,': 0.84; 'enumeration': 0.84; 'yellow': 0.84; 'absolutely': 0.87; 'to:none': 0.92 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:cc :content-type; bh=lp4KnWxC82hHaftPvKMguncNlW1z22hx1K6ALkSDxMA=; b=MOZZONQUGrVqWFGrrAXsjz9KpSbodJl57YVYds0l27Dmo844m8vg9ZrXoK8pitCjqn DTnWbnGNeHcnqXYnIj7vg2QJE+sCqU+H4NbW2tkm5rIU4++IfxhFtc46W9CBlCNCMeSu cnGj5zLCCkdWzswRB08jhQh9xF21lG7QY2d6DgWhJgRsFc/2hYqXUGeqVaU/Q8XzGxR+ BgFiCkzxCyqwIasKbprlZ/Kep16z6y9NWK1NfeRUWWBgxZQeGQqCXoZ71bAB0cSztsw6 TCMyKbZo+BukorUCd9Ell4+xCn1J0+Xet8pAVukGimtDzUKi7Y/XhNXRoSRUGWj0Xff8 TJ0g== MIME-Version: 1.0 X-Received: by 10.224.89.2 with SMTP id c2mr16156596qam.75.1422034653608; Fri, 23 Jan 2015 09:37:33 -0800 (PST) In-Reply-To: References: <54ABB88A.7070504@r3dsolutions.com> <54ABC52A.1050507@davea.name> <54ABE383.3020801@r3dsolutions.com> <54AC97D9.4010504@r3dsolutions.com> <54ACAA04.60801@r3dsolutions.com> <54ADC99F.3020405@stoneleaf.us> <54B44A64.7010105@r3dsolutions.com> <54b4aded$0$2738$c3e8da3$76491128@news.astraweb.com> <54B5B486.7080406@r3dsolutions.com> <54B72D32.3090209@r3dsolutions.com> <54B76B0A.7050706@r3dsolutions.com> Date: Sat, 24 Jan 2015 04:37:33 +1100 Subject: Re: Comparisons and sorting of a numeric class.... From: Chris Angelico Cc: "python-list@python.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 39 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1422034655 news.xs4all.nl 2895 [2001:888:2000:d::a6]:51298 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:84365 On Sat, Jan 24, 2015 at 4:22 AM, Rustom Mody wrote: > Strikes me that making enumerations is-equal rather than just > =-equal is a bit heavy-handed and unnecessary > What do you think? *Normal* use of an enumeration does make sense for them to be identical. Classic use would be like this: class AnsiColor(IntEnum): black = 0 red = 1 green = 2 orange = 3 # ... blue, magenta, cyan, white bold_black = 8 bold_red = 9 # etc etc etc bold_orange = 11 yellow = 11 # On many screens, bold orange looks more yellow There is absolutely no difference between the ANSI color "bold orange" and the ANSI color "yellow". So you would expect them to be identical: >>> AnsiColor.yellow >>> AnsiColor.yellow is AnsiColor.bold_orange True And they are. There's simply no use-case for equal-but-distinct tokens, when you're primarily using this to give names to numbers. For another example, you could localize all the color names, or use "bright" instead of "bold", or drop the underscores; but ultimately, if you send "\e[11m" to the console, you're going to get the same color, whether that 11 was called "bold_orange" or "jaune". What you're trying to do here is a hack, so it's no surprise that the system doesn't properly support it. ChrisA