title: python3 print function emits 'ascii' codec can't encode character error
body: <p>A user inputs a string on my website.  They input a non-ascii character.</p>
  
  <p>The javascript saves their input, packages it with JSON.stringify(), and sends it to the server.</p>
  
  <p>The server, running Python3, unpacks the JSON with json.loads and saves this string in a Node object, then runs the line</p>
  
  <pre><code>print('looks like {}'.format(node_obj))
  </code></pre>
  
  <p>I receive the error</p>
  
  <pre><code>'ascii' codec can't encode character error '\u2212' in position 941: ordinal not in range(128)
  </code></pre>
  
  <p>It seems to me that the print function in Python3 is trying to convert the unicode string to ascii! (convert to bytes object using ascii encoding?)</p>
  
  <p>Is it possible that my FreeBSD server does not support UTF-8, causing Python's print function to make this conversion?  Or perhaps the string was never properly sanitized in the first place, and I should be doing that in the javascript when I first receive it from the user?</p>
  
  <p>Let me know what further information is useful to you.</p>