The vim.current.buffer list is a list of strings:
:pyx import vim; print(type(vim.current.buffer))
and strings are immutable in Python; something like a_str = 'b' doesn't work either. This is just a property of the Python programming language (and many other languages, including VimScript).
The general way to do this is to get the ...