On 2011-05-19, at 07:28 , Georg Brandl wrote: > On 19.05.2011 00:39, Greg Ewing wrote: >> Ethan Furman wrote: >> >>> some_var[3] == b'd' >>> >>> 1) a check to see if the bytes instance is length 1 >>> 2) a check to see if >>> i) the other object is an int, and >>> 2) 0 <= other_obj < 256 >>> 3) if 1 and 2, make the comparison instead of returning NotImplemented? >> >> It might seem convenient, but I'd worry that it would lead to >> even more confusion in other ways. If someone sees that >> >> some_var[3] == b'd' >> >> is true, and that >> >> some_var[3] == 100 >> >> is also true, they might expect to be able to do things >> like >> >> n = b'd' + 1 >> >> and get 101... or maybe b'e'... > > Maybe they should :)
But why wouldn't "they" expect `b'de' + 1` to work as well in this case? If a 1-byte bytes is equivalent to an integer, why not an arbitrary one as well? _______________________________________________ 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