Digamos que avalio o seguinte código Python:
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)]
Gostaria de transformar a string de saída, que é simplesmente a saída de impressão do Python, em uma estrutura de dados Elisp. Então, eu preciso de uma função foo
que faz isso:
(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))
Embora não seja difícil escrever uma versão foo
que funcione para essa instância específica, pergunto-me se há uma biblioteca que faça isso de maneira genérica, ou seja, é capaz de lidar com qualquer estrutura complexa do Python.