擅长:python、mysql、java
<p>内存使用和速度。</p>
<p>当您调用<code>jsonstr = json.dumps(mydata)</code>时,它首先在内存中创建数据的完整副本,然后才将数据<code>file.write(jsonstr)</code>放入磁盘。因此,这是一种更快的方法,但如果要保存大量数据,则可能会出现问题。</p>
<p>当调用<code>json.dump(mydata, file)</code>——不使用's'时,不会使用新内存,因为数据是由块转储的。但整个过程大约慢了2倍。</p>
<p>来源:我检查了<code>json.dump()</code>和<code>json.dumps()</code>的源代码,还测试了用<code>time.time()</code>测量时间的变量和观察htop中的内存使用情况。</p>