How to create a writeable buffer?

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Steve Chaplin

    #1

    How to create a writeable buffer?

    I'm trying to create an object (as a C extension) to support the buffer
    interface and was getting "TypeError: buffer is read-only" errors. So I
    had a look at the array object and it has the same problem:

    $ python
    >>import array
    >>a=array.array ('c', ['a', 'b', 'c'])
    >>a
    array('c', 'abc')
    >>a[0]
    'a'
    >>a[0]='d'
    >>a
    array('c', 'dbc')
    >>buf=buffer( a)
    >>buf[0]
    'd'
    >>buf[0]='e'
    TypeError: buffer is read-only

    The array is a mutable (writable) object, and the array implements the
    buffer interface and provides a 'getwritebuf' method.
    (Python-2.4.4/Modules/arraymodule.c has an array_buffer_ge twritebuf())
    so why does it give "TypeError: buffer is read-only"?

    Steve
Working...