He estado tratando de aprender cómo escribir C-extensions para Python y quiero estar seguro de que entiendo cómo funciona PyArg_ParseTupleAndKeywords.¿Cómo funciona PyArg_ParseTupleAndKeywords?
Creo que el primer argumento es un puntero PyObject que apunta a una matriz de los argumentos que pasan a la función C-extension en el orden en que se pasaron. El segundo argumento es una lista de palabras clave que se pasaron, las posiciones en las que se aprobaron y, muy probablemente, algún tipo de indicador indicando en qué posición comienzan las palabras clave y la posición se vuelve irrelevante.
PyArg_ParseTupleAndKeywords continuación, utiliza su lista de palabras clave (cuarto argumento) para mapear entre los argumentos especificados con una palabra clave y tanto la cadena de formato (tercera argumento) y las direcciones de las variables de C (5 ° & + argumentos) a la que los valores apropiados deben ser copiado
¿Es correcto mi entendimiento? Cuando leo la documentación en línea, todo lo que veo son referencias a "argumentos de posición y argumentos de palabras clave", lo que me hace sentir un poco en la oscuridad. ¿Dónde está el archivo del intérprete de Python que maneja PyArg_ParseTupleAndKeywords?
En lugar de simplemente la documentación del API C, hay es un buen resumen legible en http://docs.python.org/2/extendiendo/extendiendo.html – timbo