On Mon, May 21, 2018 at 11:22:17AM -0700, Chris Barker wrote: > On Sat, May 19, 2018 at 6:52 AM, Steven D'Aprano <st...@pearwood.info> > wrote: > > > Philosophical arguments about the nature of computer memory aside, byte > > objects in Python are collections of ints. > > > > not when you start talking about bit-wise operations :-) > > If a "byte" in python was an integer, then we'd use b**2 rather than b << 1
Why? Ints support bit-shift operations: py> 45 << 1 90 as well as other bitwise operations. (And b<<1 isn't the same as b**2.) I trust that you aren't going to argue that 45 isn't an int. > (yes, I know bit shifting can be more efficient, but I don't think that's > why it's there in python) > > The entire point of bitwise operators is so that the bits themselves can be > accessed and manipulated. Then where are the primitives for accessing and manipulating individual bits? > > If you want those ints to represent something else, you're responsible > > for handling that (say, using the struct module). > > > yup -- with struct, and, hmm, maybe bitwise operators? Right. Which is why we want to add support for bitwise operators to bytes. > Anyway, as you say, this is a Philosophical (or semantic) point -- I don't > think it effects the discussion at hand. > > However, when you talk about bit-shifting a bytes object, you do need to > decide if each byte is handled individually, or if they are one big > collection. True, we have to decide that. Is there a good reason to handle each byte individually? -- Steve _______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/