pagination-problem / tree_structure

0 stars 0 forks source link

Mauvaise indentation des fichiers .json des instances #23

Open SarahMinich opened 4 years ago

SarahMinich commented 4 years ago

Voici le problème. Quand je demande au programme de générer une instance de type "classic" (donc en fait votre code, on n'y contrôle pas la moyenne ni l'écart-type), l'indentation se fait correctement. Par contre, quand je demande une instance de type "stats", l'indentation est étrange pour le tableau des poids symbol_weights et la matrice costs.

J'ai pensé que c'était parce que les types des variables contenant les informations qui posent problème dans le fichier .json n'étaient peut-être pas les mêmes et pourtant le programme me dit que si :

image

Et voici les deux fichiers obtenus. Le premier avec la méthode "classic" : image Le deuxième avec la méthode "stats": image

Je suis moins étonnée pour le tableau des poids que pour la matrice costs car le code utilisé pour calculé les poids dépend de la méthode. Cependant, c'est le même code qui est utilisé pour calculer la matrice costs puis pour ajouter les champs cost_mean, cost_standard_deviation et costs dans le fichier .json pour les deux méthodes, je ne comprends vraiment pas le problème.

laowantong commented 4 years ago

Le problème en soi n'est pas que les indentations ne sont pas correctes, mais que la méthode json.dumps() ne peut pas générer d'indentations incorrectes ou de clés en double comme ci-dessous:

https://github.com/pagination-problem/tree_structure/blob/0f0ce9524dabb82aa98fc373d4f27870acf7946b/instances/snapshots/h%3D04_t%3D003_s%3D006_m%3D06__S1M4.json#L10-L26

Comme tu as par le passé déjà réussi à produire ce genre de sortie en écrivant tout un fichier JSON ligne par ligne et même caractère par caractère au lieu d'employer json.dumps(), et que j'ai le cœur fragile, je voulais juste m'assurer que nous ne sommes pas dans le même cas de figure.