Re: where is the PyString_AsString in Python 3.0?
BigHand wrote: > Finally I got the results now. This did take me 10 hours to solve > this. the docs of 3.0.. You will have to get used to Unicode. The code you used against the C-API mimics almost exactly the steps you'd use at the Python level. Stefan -- http://mail.python.org/mailman/listinfo/python-list
Re: where is the PyString_AsString in Python 3.0?
BigHand wrote: > I know that there is no PyString_AsString in Python3.0, > could you guys give me instruction about how can I do with the > following ? > > PyObject *exc_type = NULL, *exc_value = NULL, *exc_tb = NULL; > PyErr_Fetch(&exc_type, &exc_value, &exc_tb); > > how do I transfer the exc_type in a char* ? Are you sure you want the exc_type and not the exc_value? The only major thing I'd do with the type of an exception is to let Python check for it using PyErr_ExceptionMatches(). Stefan -- http://mail.python.org/mailman/listinfo/python-list
Re: where is the PyString_AsString in Python 3.0?
BigHand gmail.com> writes: > > Finally I got the results now. This did take me 10 hours to solve > this. the docs of 3.0.. > I hope this could help someone else: > const char *strExcType = PyBytes_AS_STRING(pyStr); > Py_XDECREF(str_exc_type); > Py_XDECREF(pyStr); You can't Py_DECREF() pyStr while holding on to strExcType because PyBytes_AS_STRING just yields a reference to the internal contents of the object. -- http://mail.python.org/mailman/listinfo/python-list
Re: where is the PyString_AsString in Python 3.0?
On Mar 7, 9:34 am, BigHand wrote: > On Mar 7, 3:50 am, Benjamin Peterson wrote: > > > BigHand gmail.com> writes: > > > > > There is no PyString_AsString. Everything > > >> string is unicode now. (PyUnicode API) > > > hello,Ben, > > > could you give me an example? I almost know the > > > PyUnicode API,but the > > > docs of 3.0 is too brief for me. > > > PyString_FromString -> PyUnicode_FromString > > PyString_Concat -> PyUnicode_Concat > > etc... > > > To get a char * you have to explicitly encode the string with > > PyUnicode_AsEncodedString. > > thanks Ben! Finally I got the results now. This did take me 10 hours to solve this. the docs of 3.0.. I hope this could help someone else: PyObject *exc_type = NULL, *exc_value = NULL, *exc_tb = NULL; PyErr_Fetch(&exc_type, &exc_value, &exc_tb); PyObject* str_exc_type = PyObject_Repr(exc_type); //Now a unicode object PyObject* pyStr = PyUnicode_AsEncodedString(str_exc_type, "utf-8", "Error ~"); const char *strExcType = PyBytes_AS_STRING(pyStr); Py_XDECREF(str_exc_type); Py_XDECREF(pyStr); Py_XDECREF(exc_type); Py_XDECREF(exc_value); Py_XDECREF(exc_tb); -- http://mail.python.org/mailman/listinfo/python-list
Re: where is the PyString_AsString in Python 3.0?
On Mar 7, 3:50 am, Benjamin Peterson wrote: > BigHand gmail.com> writes: > > > > There is no PyString_AsString. Everything > >> string is unicode now. (PyUnicode API) > > hello,Ben, > > could you give me an example? I almost know the > > PyUnicode API,but the > > docs of 3.0 is too brief for me. > > PyString_FromString -> PyUnicode_FromString > PyString_Concat -> PyUnicode_Concat > etc... > > To get a char * you have to explicitly encode the string with > PyUnicode_AsEncodedString. thanks Ben! -- http://mail.python.org/mailman/listinfo/python-list
Re: where is the PyString_AsString in Python 3.0?
BigHand gmail.com> writes: > > There is no PyString_AsString. Everything >> string is unicode now. (PyUnicode API) > hello,Ben, > could you give me an example? I almost know the > PyUnicode API,but the > docs of 3.0 is too brief for me. PyString_FromString -> PyUnicode_FromString PyString_Concat -> PyUnicode_Concat etc... To get a char * you have to explicitly encode the string with PyUnicode_AsEncodedString. -- http://mail.python.org/mailman/listinfo/python-list
Re: where is the PyString_AsString in Python 3.0?
On 3月6日, 下午8时50分, Benjamin Peterson wrote: > BigHand gmail.com> writes: > > > > > Guys: > > I know that there is no PyString_AsString in Python3.0, > > could you guys give me instruction about how can I do with the > > following ? > > There is no PyString_AsString. Everything string is unicode now. (PyUnicode > API) hello,Ben, could you give me an example? I almost know the PyUnicode API,but the docs of 3.0 is too brief for me. B.R. BH -- http://mail.python.org/mailman/listinfo/python-list
Re: where is the PyString_AsString in Python 3.0?
BigHand gmail.com> writes: > > Guys: > I know that there is no PyString_AsString in Python3.0, > could you guys give me instruction about how can I do with the > following ? There is no PyString_AsString. Everything string is unicode now. (PyUnicode API) -- http://mail.python.org/mailman/listinfo/python-list
where is the PyString_AsString in Python 3.0?
Guys: I know that there is no PyString_AsString in Python3.0, could you guys give me instruction about how can I do with the following ? PyObject *exc_type = NULL, *exc_value = NULL, *exc_tb = NULL; PyErr_Fetch(&exc_type, &exc_value, &exc_tb); how do I transfer the exc_type in a char* ? thanks in advance!. B.R. BH. -- http://mail.python.org/mailman/listinfo/python-list