On 3/15/2011 10:12 AM, Pauli Virtanen wrote: > Tue, 15 Mar 2011 10:06:09 -0700, Matthew Brett wrote: >> Sorry to ask, and I ask partly because I'm in the middle of a py3k port, >> but is this the right fix to this problem? I was confused by the >> presence of the old PyString_AsString function. > > It's not a correct fix. The original code seems also wrong ("index" can > either be Unicode or Bytes/String object), and will probably bomb when > indexing with Unicode strings on Python 2. The right thing to do is to > make it show the repr of the "index" object. > > The PyString_AsString is present, as it's mapped on Py3 to > PyBytes_AsString by "npy_3kcompat.h". > > Pauli
I think the proposed patch does correctly fix ticket #1770 and the OP's problem under Python 3. On Python 3.x str() and repr() are the same for byte strings: >>> str(b's') "b's'" >>> repr(b's') "b's'" I agree that the code is broken for Python 2.x when indexing with a byte object. Christoph _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion