读写json中文ASCII乱码问题的解决方法

yipeiwu_com6年前Python基础

今天要帮前端写一个小后台,就是读取数据然后转成json送给他,让他去展示。数据很简单,但是处理的时候遇到了一个问题,文件中涉及到了中文的处理,每次处理完写的json格式就是ASCII码,完全没办法用。代码如下:

# -*- coding: utf-8 -*-
import json
import codecs

f = codecs.open('data.txt', 'r', 'utf-8')
content = json.load(f)
print content[0]['id']
jsdata = json.dumps(content, sort_keys=True, indent=4)
f.close()


j = codecs.open('test.json', 'w')
j.write(jsdata)
j.close()

网上查了一下,修改后的代码如下:

# -*- coding: utf-8 -*-
import json
import sys
reload(sys)
sys.setdefaultencoding( "utf-8" )

f = open('data.txt', 'r')
content = json.load(f)
print content[0]['id']
# 拼接json数据,转码为非ascii编码
jsdata = json.dumps(content, sort_keys=True, indent=4, ensure_ascii=False)
f.close()


j = open('test.json', 'w')
j.write(jsdata)
j.close()

以上这篇读写json中文ASCII乱码问题的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python多进程提取处理大量文本的关键词方法

python多进程提取处理大量文本的关键词方法

经常需要通过python代码来提取文本的关键词,用于文本分析。而实际应用中文本量又是大量的数据,如果使用单进程的话,效率会比较低,因此可以考虑使用多进程。 python的多进程只需要使用...

python 类之间的参数传递方式

练手记录以及调试步骤. class A(object): def __init__(self,a="A"): print("enter",a) print("le...

Pytorch中的variable, tensor与numpy相互转化的方法

Pytorch中的variable, tensor与numpy相互转化的方法

在使用pytorch作为深度学习的框架时,经常会遇到变量variable、张量tensor与矩阵numpy的类型的相互转化的问题,本章结合这实际图像对此转化方法进行实现。 1.加载需要用...

vscode 远程调试python的方法

vscode 远程调试python的方法

本文介绍了vscode 远程调试python的方法,分享给大家,具有如下: 实验环境 远程服务器:京东云,1核2G,centos7.3 64bit 本地环境配置 安装vscode...

【python】matplotlib动态显示详解

【python】matplotlib动态显示详解

1.matplotlib动态绘图 python在绘图的时候,需要开启 interactive mode。核心代码如下: plt.ion(); #开启interactive mode...