7
Mając podany kod hipotetyczny:Szybkie ciąg tablicą - Cython
cdef extern from "string.h":
int strcmp(char* str1, char* str2)
def foo(list_str1, list_str2):
cdef unsigned int i, j
c_arr1 = ??
c_arr2 = ??
for i in xrange(len(list_str1)):
for j in xrange(len(list_str2)):
if not strcmp(c_arr1[i], c_arr2[j]):
do some funny stuff
jest jakiś sposób, jak konwertować list do C tablic?
Przeczytałem i wypróbowałem Cython - converting list of strings to char **, ale to tylko powoduje błędy.
Cóż, to jest niesamowita odpowiedź! bardzo dziękuję za to, ale chodzi o to, że linia ret [i] = PyString_AsString (list_str [i]) podnosi otrzymywanie char * z tymczasowej wartości Pythona podczas kompilacji – Jendas
Dobra, moja zła! Zapomniałem cpython.string cimport PyString_AsString. Teraz działa dobrze! Dziękuję Ci!! – Jendas