Wie implementiere ich benutzerdefinierte Einrückungen, wenn ich mit dem JSON-Modul hübsch drucke?

Also benutze ich Python 2.7 mit demjson Modul zum Codieren der folgenden Datenstruktur:

'layer1': {
    'layer2': {
        'layer3_1': [ long_list_of_stuff ],
        'layer3_2': 'string'
    }
}

Mein Problem ist, dass ich alles mit hübschem Druck wie folgt drucke:

json.dumps(data_structure, indent=2)

Was großartig ist, außer dass ich alles einrücken möchte, mit Ausnahme des Inhalts in"layer3_1" - Es ist ein riesiges Wörterbuch, in dem die Koordinaten aufgelistet sind. Wenn für jeden Wert ein einzelner Wert festgelegt ist, wird beim Drucken eine Datei mit Tausenden von Zeilen erstellt.

{
  "layer1": {
    "layer2": {
      "layer3_1": [
        {
          "x": 1,
          "y": 7
        },
        {
          "x": 0,
          "y": 4
        },
        {
          "x": 5,
          "y": 3
        },
        {
          "x": 6,
          "y": 9
        }
      ],
      "layer3_2": "string"
    }
  }
}

Was ich wirklich will, ist etwas Ähnliches wie das Folgende:

{
  "layer1": {
    "layer2": {
      "layer3_1": [{"x":1,"y":7},{"x":0,"y":4},{"x":5,"y":3},{"x":6,"y":9}],
      "layer3_2": "string"
    }
  }
}

Ich höre, es ist möglich, die zu verlängernjson Modul: Kann das Modul so eingestellt werden, dass die Einrückung nur im Inneren des Moduls deaktiviert wird?"layer3_1" Objekt? Wenn ja, würde mir bitte jemand sagen, wie?

Antworten auf die Frage(9)

Ihre Antwort auf die Frage