Je reçois cette erreur lorsque vous essayez de vider une expression sympy à YAML:sympy TypeError: ne peut pas déterminer la valeur de vérité de Relational lorsque le dumping à YAML
TypeError: cannot determine truth value of Relational
Ce que je suis en train de jeter est un jeu avec 2 sympy.Symbol
objets. Je ne sais pas pourquoi sympy essaie de l'évaluer en tant qu'objet StrictLessThan
. sympy essaie de déterminer la valeur de vérité, peut-être pour évaluer la fonction mapping.sort()
?
Voici le retraçage:
Traceback (most recent call last):
File "E:/Matt/Documents/ProgrammingProjects/infinitree/abg.py", line 267, in <module>
print yaml.dump(mtree)
File "C:\Python27\lib\site-packages\yaml\__init__.py", line 202, in dump
return dump_all([data], stream, Dumper=Dumper, **kwds)
File "C:\Python27\lib\site-packages\yaml\__init__.py", line 190, in dump_all
dumper.represent(data)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 28, in represent
node = self.represent_data(data)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 61, in represent_data
node = self.yaml_multi_representers[data_type](self, data)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 434, in represent_object
u'tag:yaml.org,2002:python/object:'+function_name, state)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 123, in represent_mapping
node_value = self.represent_data(item_value)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 61, in represent_data
node = self.yaml_multi_representers[data_type](self, data)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 434, in represent_object
u'tag:yaml.org,2002:python/object:'+function_name, state)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 123, in represent_mapping
node_value = self.represent_data(item_value)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 57, in represent_data
node = self.yaml_representers[data_types[0]](self, data)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 223, in represent_dict
return self.represent_mapping(u'tag:yaml.org,2002:map', data)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 123, in represent_mapping
node_value = self.represent_data(item_value)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 61, in represent_data
node = self.yaml_multi_representers[data_type](self, data)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 434, in represent_object
u'tag:yaml.org,2002:python/object:'+function_name, state)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 123, in represent_mapping
node_value = self.represent_data(item_value)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 61, in represent_data
node = self.yaml_multi_representers[data_type](self, data)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 434, in represent_object
u'tag:yaml.org,2002:python/object:'+function_name, state)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 123, in represent_mapping
node_value = self.represent_data(item_value)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 57, in represent_data
node = self.yaml_representers[data_types[0]](self, data)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 223, in represent_dict
return self.represent_mapping(u'tag:yaml.org,2002:map', data)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 123, in represent_mapping
node_value = self.represent_data(item_value)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 57, in represent_data
node = self.yaml_representers[data_types[0]](self, data)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 223, in represent_dict
return self.represent_mapping(u'tag:yaml.org,2002:map', data)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 123, in represent_mapping
node_value = self.represent_data(item_value)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 61, in represent_data
node = self.yaml_multi_representers[data_type](self, data)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 434, in represent_object
u'tag:yaml.org,2002:python/object:'+function_name, state)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 123, in represent_mapping
node_value = self.represent_data(item_value)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 57, in represent_data
node = self.yaml_representers[data_types[0]](self, data)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 229, in represent_set
return self.represent_mapping(u'tag:yaml.org,2002:set', value)
File "C:\Python27\lib\site-packages\yaml\representer.py", line 120, in represent_mapping
mapping.sort()
File "C:\Python27\lib\site-packages\sympy\core\relational.py", line 195, in __nonzero__
raise TypeError("cannot determine truth value of Relational")
TypeError: cannot determine truth value of Relational
Merci pour l'entrée. Je vais essayer demain – themantalope
Il y a des exemples de représentants ici sur [so] et dans les docs ruamel.yaml/PyYAML. Si cela ne suffit pas, vous savez où demander, mais assurez-vous d'inclure un exemple de code minimal (ce qui facilite grandement les choses). – Anthon
Salut @Anton, merci pour les suggestions, je l'apprécie vraiment. Je n'ai pas inclus beaucoup de code dans le post depuis que j'avais sous-classé certaines des classes que j'essaie de faire tomber, et je ne voulais pas poster tellement que quelqu'un qui est prêt à aider serait submergé. S'il y a autre chose que vous pensez que je devrais inclure dans le post qui pourrait vous aider et aider les autres à mieux comprendre le contexte, s'il vous plaît faites le moi savoir. Je suppose que dans ma tentative de concision, j'ai peut-être trop découpé. – themantalope