Angenommen, ich bewerte den folgenden Python-Code:
import inspect
import scipy.ndimage.filters
list (inspect.getargspec (scipy.ndimage.filters.gaussian_filter1d))
# => [['input', 'sigma', 'axis', 'order', 'output', 'mode', 'cval'],
# None, None, (-1, 0, None, 'reflect', 0.0)]
Ich möchte die Ausgabezeichenfolge, die einfach Pythons Druckausgabe ist, in eine Elisp-Datenstruktur umwandeln. Ich brauche also eine Funktion foo
, die dies tut:
(foo "[['input', 'sigma', 'axis', 'order', 'output', 'mode', 'cval'], None, None, (-1, 0, None, 'reflect', 0.0)]")
;; =>
;; (("input"
;; "sigma"
;; "axis"
;; "order"
;; "output"
;; "mode"
;; "cval")
;; nil
;; nil
;; (-1 0 nil "reflect" 0.0))
Es ist zwar nicht schwer, eine Version zu schreiben foo, die für diese bestimmte Instanz funktioniert, aber ich frage mich, ob es eine Bibliothek gibt, die dies generisch tut, dh mit jeder komplexen Python-Struktur umgehen kann.