title: Python JSON preserve encoding
body: <p>I have a file like this:</p>
  
  <pre><code>aarónico
  aaronita
  ababol
  abacá
  abacería
  abacero
  ábaco
  #more words, with no ascii chars
  </code></pre>
  
  <p>When i read and print that file to the console, it prints exactly the same, as expected, but when i do:</p>
  
  <pre><code>f.write(json.dumps({word: Lookup(line)}))
  </code></pre>
  
  <p>This is saved instead:</p>
  
  <pre><code>{"aar\u00f3nico": ["Stuff"]}
  </code></pre>
  
  <p>When i expected:</p>
  
  <pre><code>{"aarónico": ["Stuff"]}
  </code></pre>
  
  <p>I need to get the same when i jason.loads() it, but i don't know where or how to do the encoding or if it's needed to get it to work.</p>
  
  <p><strong>EDIT</strong></p>
  
  <p>This is the code that saves the data to a file:</p>
  
  <pre><code>with open(LEMARIO_FILE, "r") as flemario:
      with open(DATA_FILE, "w") as f:
          while True:
              word = flemario.readline().strip()
              if word == "":
                  break
              print word #this is correct
              f.write(json.dumps({word: RAELookup(word)}))
              f.write("\n")
  </code></pre>
  
  <p>And this one loads the data and returns the dictionary object:</p>
  
  <pre><code>    with open(DATA_FILE, "r") as f:
          while True:
              new = f.readline().strip()
              if new == "":
                  break
              print json.loads(new) #this is not
  </code></pre>
  
  <p>I cannot lookup the dictionaries if the keys are not the same as the saved ones.</p>
  
  <p><strong>EDIT 2</strong></p>
  
  <pre><code>&gt;&gt;&gt; import json
  &gt;&gt;&gt; f = open("test", "w")
  &gt;&gt;&gt; f.write(json.dumps({"héllö": ["stuff"]}))
  &gt;&gt;&gt; f.close()
  &gt;&gt;&gt; f = open("test", "r")
  &gt;&gt;&gt; print json.loads(f.read())
  {u'h\xe9ll\xf6': [u'stuff']}
  &gt;&gt;&gt; "héllö" in {u'h\xe9ll\xf6': [u'stuff']}
  False
  </code></pre>