ein Wörterbuch habe,ein Wörterbuch in Cython Verwendung, insbesondere innerhalb nogil
my_dict = {'a':[1,2,3], 'b':[4,5] , 'c':[7,1,2])
Ich möchte in einem Cython nogil Funktion dieses Wörterbuch verwenden. Also, ich habe versucht, es als
cdef dict cy_dict = my_dict
zu deklarieren. Bis zu diesem Zeitpunkt ist in Ordnung.
Jetzt muss ich über die Schlüssel von my_dict iterieren und wenn die Werte in der Liste sind, iterieren Sie darüber. In Python ist es ganz einfach wie folgt:
for key in my_dict:
if isinstance(my_dict[key], (list, tuple)):
###### Iterate over the value of the list or tuple
for value in list:
## Do some over operation.
Aber innerhalb Cython, ich möchte das gleiche implementieren, dass auch innerhalb nogil. Da Python-Objekte in Nogil nicht erlaubt sind, stehe ich hier oben.
with nogil:
#### same implementation of the same in Cython
Kann mir bitte jemand helfen?
Danke. Lass mich einen Blick darauf werfen. Datentyp im Wörterbuch, ich werde es als Liste behalten. Zur Kompilierung kann ich dem normalen Cython-Weg folgen oder? –
Sie müssen die Sprache wie beschrieben [hier] (http://docs.cython.org/src/userguide/wrapping_CPlusPlus.html#specify-c-language-in-setup-py) angeben, aber ansonsten sollte es normal funktionieren Weg. – DavidW
Oh, tut mir leid. Ich habe den Kommentar gelöscht, weil ich es funktionierte. Entschuldigung zu erwähnen, dass –