[Python] Md5 all'interno di un modulo python

drama drama a autistici.org
Ven 11 Nov 2011 15:55:06 CET


Il 11/11/2011 14:59, Marco Giusti ha scritto:
> On Fri, Nov 11, 2011 at 01:16:29PM +0100, drama wrote:
>> Buongiorno a tutta la lista,
>>
>> Sto scrivendo in c un modulo python e mi ritrovo ad aver
>> bisogno di calcolare l'md5 di una stringa di testo.
>>
>> Mi chiedevo se e come fosse possibile riutilizzare l'hexdigest
>> del modulo md5.
> non mi sono mai addentrato troppo sull'argomento python+c ma a mio
> avviso hai due opzioni:
>
> 1. fai tutto da c importando il modulo[1] e poi accedendo alle varie
> funzioni oppure

Cosi' ho fatto.

Per futura memoria:

  PyObject* md5Module;
  PyObject* md5Import;
  PyObject* subModules;
  PyObject* md5digest;
  PyObject* md5object;
  PyObject* digestFunc;

  subModules = PyList_New(0);
  PyList_Append(subModules, PyString_FromString("md5"));

  md5Import = PyImport_ImportModuleEx("md5", NULL, NULL, subModules);

  md5Module = PyObject_GetAttr(md5Import, PyString_FromString("md5"));

  md5object = PyObject_Call(md5Module, args, NULL);  /* args e' una
lista. Contiene un elemento solo, stringa */

  digestFunc = PyObject_GetAttr(md5object,
PyString_FromString("hexdigest"));
 
  md5digest = PyObject_CallFunction(digestFunc, NULL);

  printf("%s",  PyString_AsString(md5digest));



Grazie per le risposte.
d.




Maggiori informazioni sulla lista Python