擅长:python、mysql、java
<p>如果存储的文件是JSON格式,则它们是无效的。JSON格式不允许使用单引号来分隔字符串。<strong>假设在键/值字符串中没有单引号,</strong>可以用双引号替换单引号,然后使用JSON模块读入:</p>
<pre><code>import json
x = "{'FileID': 'a3333.txt','Timestamp': '2014-12-05T02:01:28.271Z','SuccessList':'a,b,c,d,e'}"
x = x.replace("'", '"')
j = json.loads(x)
print j
</code></pre>
<p>产量:</p>
^{pr2}$
<p><strong>或者:</strong></p>
<p>如果数据是Python <code>dict</code>的字符串表示,则可以使用<code>eval</code>读入它。使用<code>eval</code>是危险的(参见<a href="http://nedbatchelder.com/blog/201206/eval_really_is_dangerous.html" rel="nofollow">Ned Batchelder</a>对此的想法)。也就是说,如果您自己编写了该文件,并且确信它不包含恶意代码,则可以使用<code>eval</code>将该字符串作为Python源代码读取:</p>
<pre><code>x = "{'FileID': 'a3333.txt','Timestamp': '2014-12-05T02:01:28.271Z','SuccessList':'a,b,c,d,e'}"
eval(x, {'__builtins__': {}})
</code></pre>
<p>产量:</p>
^{pr2}$
<p>不过,别养成这种习惯!正确的方法是以适当的序列化格式将数据保存到文件中,然后使用<code>json</code>模块这样的库从磁盘读取数据。在</p>