title: Replace all occurrences of a string in JSON object regardless of key
body: <p>I have a JSON object in Python created through requests built in .json() function.</p>
  
  <p>Here is a simplified sample of what I'm doing:</p>
  
  <pre><code>data = session.get(url)
  
  obj = data.json()
  
  s3object = s3.Object(s3_bucket, output_file)
  s3object.put(Body=(bytes(json.dumps(obj).encode('UTF-8'))))
  </code></pre>
  
  <p>Example obj:</p>
  
  <pre><code>{'id': 'fab779b7-2586-4895-9f3b-c9518f34e028', 'project_id': 'a1a73e68-9943-4584-9d59-cc84a0d3e92b', 'created_at': '2017-10-23 02:57:03 -0700', 'sections': [{'section_name': '', 'items': [{'id': 'ffadc652-dd36-4b9f-817c-6539a4b462ab', 'created_at': '2017-10-23 03:36:13 -0700', 'updated_at': '2017-10-23 03:38:32 -0700', 'created_by': 'paul', 'question_text': 'Drawing Ref(s)', 'spec_ref': '', 'display_number': null, 'response': '', 'comment': 'see attached mh309', 'position': 1, 'is_conforming': 'N/A', 'display_type': 'text'}]}]}
  </code></pre>
  
  <p>I need to replace any occurrence of the string "N/A" with "Not Applicable" anywhere it appears regardless of its key or location before I upload the JSON to S3. I cannot use local disk writes hence the reason this is done this way.</p>
  
  <p>Is this possible?</p>
  
  <p>My original plan was to turn it to a string and just replace before turning back, is this inefficient?</p>
  
  <p>Thanks,</p>