[Python-Dev] PEP 467: Minor API improvements to bytes, bytearray, and memoryview (original) (raw)

Koos Zevenhoven k7hoven at gmail.com
Tue Jun 7 17:34:02 EDT 2016


On Tue, Jun 7, 2016 at 11:28 PM, Ethan Furman <ethan at stoneleaf.us> wrote:

Minor changes: updated version numbers, add punctuation. The current text seems to take into account Guido's last comments. Thoughts before asking for acceptance? PEP: 467 Title: Minor API improvements for binary sequences Version: RevisionRevisionRevision Last-Modified: DateDateDate Author: Nick Coghlan <ncoghlan at gmail.com> Status: Draft Type: Standards Track Content-Type: text/x-rst Created: 2014-03-30 Python-Version: 3.5 Post-History: 2014-03-30 2014-08-15 2014-08-16

Abstract ======== During the initial development of the Python 3 language specification, the core bytes type for arbitrary binary data started as the mutable type that is now referred to as bytearray. Other aspects of operating in the binary domain in Python have also evolved over the course of the Python 3 series. This PEP proposes four small adjustments to the APIs of the bytes, bytearray and memoryview types to make it easier to operate entirely in the binary domain: * Deprecate passing single integer values to bytes and bytearray * Add bytes.zeros and bytearray.zeros alternative constructors * Add bytes.byte and bytearray.byte alternative constructors * Add bytes.iterbytes, bytearray.iterbytes and memoryview.iterbytes alternative iterators

Why not bytes.viewbytes (or whatever name) so that one could also subscript it? And if it were a property, one could perhaps conveniently get the n'th byte:

b'abcde'.viewbytes[n] # compared to b'abcde'[n:n+1]

Also, would it not be more clear to call the int -> bytes method something like bytes.fromint or bytes.fromord and introduce the same thing on str? And perhaps allow multiple arguments to create a str/bytes of length > 1. I guess this may violate TOOWTDI, but anyway, just a thought.

-- Koos



More information about the Python-Dev mailing list