JSON处理
现在json已经作为前后交互的一种非常重要的数据格式,几乎一统江湖。而python关于json处理也有一个非常好用的原生包。
import json
aaa=['123']
print(json..dumps(aaa))
上述简单的代码即可将一个python对象转换成一个json对象。 但是上面的的方式往往只能处理数字型和字符型,如果结构中出现了date形或者datetime型或者其他的类型,则会发生报错,此时我们需要自定义json解析器,代码如下
import datetime,json
class DateTimeEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, datetime.datetime):
return obj.strftime('%Y-%m-%d %H:%M:%S')
elif isinstance(obj, datetime.date):
return obj.strftime('%Y-%m-%d')
return json.JSONEncoder.default(self, obj)
now = datetime.datetime.now()
day = datetime.date.today()
print(json.dumps(now, cls=DateTimeEncoder))
print(json.dumps(day,cls=DateTimeEncoder))
_json=json.dumps({'now':now},cls=DateTimeEncoder,ensure_ascii=False)
print(_json)
还有一点是在使用json.dumps如果文本中有中文或者有特殊字符的话,最好加上ensure_ascii=False,以避免中文和特殊文本字符被转移成错误的ascii码
文章引用https://blog.csdn.net/linglongbayinhe/article/details/86564855