Question

Je reçois le message d'avertissement suivant lorsque j'essaie d'utiliser un tableau CTYPES comme tableau Numpy:

Python 2.7.1 (r271:86832, Nov 27 2010, 18:30:46) [MSC v.1500 32 bit (Intel)] on
win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import ctypes, numpy
>>> TenByteBuffer = ctypes.c_ubyte * 10
>>> a = TenByteBuffer()
>>> b = numpy.ctypeslib.as_array(a)
C:\Python27\lib\site-packages\numpy\ctypeslib.py:402: RuntimeWarning: Item size
computed from the PEP 3118 buffer format string does not match the actual item s
ize.
  return array(obj, copy=False)
>>> b
array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0], dtype=uint8)

Le code semble cependant fonctionner. Est-ce une mauvaise idée d'ignorer cet avertissement?

Contexte: J'appelle une DLL C qui produit des données en temps réel. J'ai besoin de passer la DLL une série de tampons pour contenir les données. En attendant que le prochain tampon se remplisse, je voudrais traiter le tampon le plus récent avec Numpy et enregistrer le résultat. Je génère les tampons avec du code comme ci-dessus, et les choses semblent fonctionner, mais je ne veux pas balayer un problème important sous le tapis.

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top