je joue un peu avec les structures 2.0.2 package pour créer des structures de données dans python3. Si j'écris le code suivant, il s'assurera que la variable i
est un entier lorsqu'il sera défini ultérieurement.Comment puis-je assurer un tableau ou d'une liste type de données dans python3 en utilisant le paquet structures
from structures import *
class S(Structure):
i = Integer
Test = S()
Test.i = 4
print (Test.i)
Test.i = 4.18
print (Test.i)
Test.i = 'A string'
print (Test.i)
Cela donnera 4 pour les deux premières déclarations d'impression et une erreur pour la troisième parce que j'ai essayé de changer le type de données à quelque chose qui ne pouvait pas être arrondi au type de données correct.
Cependant, disons que je veux la variable i
à une liste ou un tableau chaotique peuplé uniquement avec des entiers. J'essaie ce qui suit:
Test.i = [45,37.8,14.3]
et je reçois une erreur me disant que je ne peux pas tourner la i
variable dans une liste. Si j'essaie ce qui suit
from structures import *
class S(Structure):
i = [Integer]
Test.i = [45,37.8,14.3]
Le code s'exécutera et créera une liste, mais les valeurs ne sont pas contraintes à un nombre entier. Comment puis-je obtenir le paquet de structures pour contraindre les types de données dans les listes et les tableaux cahoteux à un type statique?
La bibliothèque que vous ' L'utilisation de re a été mise à jour pour la dernière fois il y a 3 ans et pour autant que je sache, elle ne répond pas à vos exigences. Vous pouvez soit accéder à une bibliothèque similaire développée activement et prendre en charge des fonctionnalités similaires, soit utiliser des analyseurs statiques tels que [Mypy] (http://mypy.readthedocs.io/) pour cela. Pour Mypy, vous pouvez le définir comme 'List [int]', où 'List' vient du module [' typing'] (https://docs.python.org/3/library/typing.html). –