python 中的 json 模块的使用 以及 Django 如何发送与接收 JSON 数据

本文介绍了Python的json模块,包括如何使用dumps和loads进行JSON数据的编码和解码。同时,讲解了Django框架中发送与接收JSON数据的方法,涉及HTTP响应与请求的数据处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


JSON 是 JavaScript Object Notation 的缩写,它是一种数据交换格式。
在JSON中,允许的值就这6种:

  1. number:数字类型;
  2. boolean:true 或 false;
  3. string:字符串类型;
  4. null:空值;
  5. array:数组类型;
  6. object:对象,使用{ }表示的类型。

python中的json模块

json 模块提供了一种很简单的方式来编码和解码JSON数据。 其中两个主要的函数是 json.dumps()json.loads()

python数据转化为JSON数据 —— dumps

import json

data = {
    'name':'Tony',
    'age':18,
    'gender':'male'
}

print(type(data))			# <class 'dict'>
j_data = json.dumps(data)
print(type(j_data))			# <class 'str'>

JSON数据转化为python数据 —— loads

p_data = json.loads(j_data)
print(type(p_data))			# <class 'dict'>
print(p_data["name"])		# Tony
print(p_data["age"])		# 18

上面的两种方法是对python数据结构的转换,如是要将文件类型转换成JSON格式,可以使用 json.dump()json.load(),仅是去掉了 ‘s’。如:

# Writing JSON data
with open('data.json', 'w') as f:
    json.dump(data, f)

# Reading data back
with open('data.json', 'r') as f:
    data = json.load(f)

Django发送与接收JSON数据

发送:

# 方式一:
from django.http import HttpResponse
import json

def send_JSON(request):
    data = {
    'name':'Tony',
    'age':18,
    'gender':'male'
    }
    
    j_data = json.dumps(data)
    
    return HttpResponse(j_data)

# 方式二, 推荐的方式,非常简洁
from django.http import JsonResponse

def send_JSON(request):
    data = {
    'name':'Tony',
    'age':18,
    'gender':'male'
    }

    return JsonResponse(j_data)

接收:

def receive_JSON(request):
    data = json.loads(request.body)
    name = data["name"]     # Tony
    age = data["age"]       #18
    
	return HttpResponse("接收完成")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值