Risposte:
json.dumps(separators=(',', ':'))
indent=0genera nuove righe, mentre indent=None(impostazione predefinita) non è in 2.7. Tutto è chiaramente indicato su: docs.python.org/3/library/json.html#json.dump
ujsonil valore predefinito è il dump senza spazi bianchi, ma purtroppo non supporta le separatorsparole chiave, quindi non è possibile aggiungere spazio se lo si desidera. È molto più veloce anche se integrato json!
request.bodyquello che la request.datagente 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