Risposte:
json.dumps(separators=(',', ':'))
indent=0
genera nuove righe, mentre indent=None
(impostazione predefinita) non è in 2.7. Tutto è chiaramente indicato su: docs.python.org/3/library/json.html#json.dump
ujson
il valore predefinito è il dump senza spazi bianchi, ma purtroppo non supporta le separators
parole chiave, quindi non è possibile aggiungere spazio se lo si desidera. È molto più veloce anche se integrato json
!
request.body
quello che la request.data
gente potrebbe trovare utilebytes(json.dumps(request.data, separators=(',', ':')), 'utf-8') == request.body
In alcuni casi potresti voler eliminare solo gli spazi bianchi finali . È quindi possibile utilizzare
json.dumps(separators=(',', ': '))
C'è uno spazio dopo :
ma non dopo ,
.
Questo è utile per diffondere i tuoi file JSON (nel controllo di versione come git diff
), in cui alcuni editor si sbarazzeranno dello spazio bianco finale ma Python json.dump lo aggiungerà nuovamente.
Nota: questo non risponde esattamente alla domanda in alto, ma sono venuto qui cercando specificamente questa risposta. Non penso che meriti il proprio QA, quindi lo sto aggiungendo qui.
Changed in version 3.4: Use (',', ': ') as default if indent is not None.
docs.python.org/3/library/json.html#json.dump