Python3 JSON 数据解析及日期和时间小结
JSON 数据解析
JSON 是什么?
JSON(JavaScript Object Notation)是一种轻量级数据交换格式,通常用于客户端和服务器之间的数据交互。与 XML 不同,JSON 的语法简洁明了,易于读写和理解。
JSON 数据格式由两种数据结构组成:
- 键值对,以逗号分隔
- 大括号括起来的对象,对象中包含任意数量的键值对
JSON 数据解析方法
使用 Python 自带的 json 模块解析 JSON 数据
- 将 JSON 数据转为 Python 对象
使用 json.loads() 函数将 JSON 数据转为 Python 对象。例如:
import json
json_data = '{"name": "Tom", "age": 18}'
python_obj = json.loads(json_data)
# 输出 Python 对象
print(python_obj)
输出结果:
{'name': 'Tom', 'age': 18}
- 将 Python 对象转为 JSON 数据
使用 json.dumps() 函数将 Python 对象转为 JSON 数据。例如:
import json
python_obj = {'name': 'Tom', 'age': 18}
json_data = json.dumps(python_obj)
# 输出 JSON 数据
print(json_data)
输出结果:
{"name": "Tom", "age": 18}
使用第三方库 requests 获取 JSON 数据并解析
要使用 requests 库获取 JSON 数据,需要先安装该库。然后,只需要使用 requests.get() 函数获取 JSON 数据,然后使用 json.loads() 函数将 JSON 数据转为 Python 对象即可。例如:
import requests
import json
url = 'https://api.github.com/repositories'
response = requests.get(url)
python_obj = json.loads(response.content)
# 输出 Python 对象
print(python_obj)
日期和时间小结
Python 中的日期和时间处理模块为 datetime。常用的类有 datetime.date、datetime.time、datetime.datetime。以下是这些类的基本用法。
datetime.date
date 类表示日期(年、月、日)。
创建 date 对象
为了创建 date 对象,需要提供年、月、日等信息。
from datetime import date
# 创建 date 对象
d = date(2021, 8, 1)
# 输出日期
print(d)
输出结果:
2021-08-01
datetime.time
time 类表示时间(小时、分钟、秒、微秒)。
创建 time 对象
为了创建 time 对象,需要提供小时、分、秒等信息。
from datetime import time
# 创建 time 对象
t = time(12, 30, 45)
# 输出时间
print(t)
输出结果:
12:30:45
datetime.datetime
datetime 类表示日期和时间(年、月、日、小时、分钟、秒、微秒)。
创建 datetime 对象
为了创建 datetime 对象,需要提供年、月、日、小时、分、秒等信息。
from datetime import datetime
# 创建 datetime 对象
dt = datetime(2021, 8, 1, 12, 30, 45)
# 输出日期和时间
print(dt)
输出结果:
2021-08-01 12:30:45
datetime 格式化输出
可以使用 strftime() 方法将 datetime 对象格式化为字符串。
from datetime import datetime
# 创建 datetime 对象
dt = datetime(2021, 8, 1, 12, 30, 45)
# 将 datetime 格式化为字符串
str_dt = dt.strftime('%Y-%m-%d %H:%M:%S')
# 输出格式化后的字符串
print(str_dt)
输出结果:
2021-08-01 12:30:45
示例说明
示例一:JSON 数据解析
下面是一个示例,演示如何解析一个含有数组的 JSON 数据。
JSON 数据:
{
"name": "Tom",
"age": 18,
"hobbies": ["read", "music", "sports"]
}
Python 代码:
import json
json_data = '{"name": "Tom", "age": 18, "hobbies": ["read", "music", "sports"]}'
python_obj = json.loads(json_data)
print(python_obj)
输出结果:
{'name': 'Tom', 'age': 18, 'hobbies': ['read', 'music', 'sports']}
示例二:datetime 格式化输出
下面是一个示例,演示如何将当前时间格式化输出为字符串。
Python 代码:
from datetime import datetime
# 获取当前时间
now = datetime.now()
# 将时间格式化为字符串
str_dt = now.strftime('%Y-%m-%d %H:%M:%S')
print(str_dt)
输出结果:
2021-09-23 10:23:47
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python3 JSON 数据解析及日期和时间小结 - Python技术站