Je suis nouveau aux concepts de Datalog, et je l'explore par pyDatalog. J'expérimente avec un convertisseur de mesure unitaire. Donc, étant donné les faits sur le nombre de pouces dans un mètre, par exemple, il devrait être capable de me dire combien de mètres il y a dans un pouce. Voici mon code à ce jour:Pourquoi la création d'une relation dans pyDatalog semble-t-elle me donner la mauvaise réponse?
from pyDatalog import pyDatalog
from pyDatalog.pyDatalog import create_terms as cterms
pyDatalog.create_terms('scale') # the long way of doing it
cterms('A, B, V')
scale['meter', 'inch'] = 39.3707787
scale[A, B] = 1/ scale[B, A]
print(scale['inch', 'meter'] == V)
WNY ne pas le programme convertir les pouces en mètres correctement? Il devrait voir qu'il y a 39,37 pouces dans un mètre, et appliquer la règle réciproque pour convertir l'autre sens. Donc, il devrait imprimer 0.0234, mais il imprime réellement
V
----------
39.3707787
Probablement un meilleur tag aiderait les gens à trouver cette question. Il semble n'avoir aucun rapport avec la programmation logique, mais avec Python. –
Je ne suis pas d'accord. La page Support & Community de [link] (https://sites.google.com/site/pydatalog/support) indique: "Veuillez publier des questions sur l'utilisation de pyDatalog sur StackOverflow (assurez-vous d'ajouter l'étiquette de programmation logique à le bas du formulaire). " – blippy
Désolé, je n'étais pas au courant de ça. Merci pour la correction. –