40.Python从入门到精通—Python3 JSON 数据解析 Python3 日期和时间 什么是时间元组? 获取当前时间 获取格式化的时间
- Python3 JSON 数据解析
- Python3 日期和时间
- 什么是时间元组?
- 获取当前时间
- 获取格式化的时间
Python3 JSON 数据解析
Python3 中可以使用内置的 json 模块来解析 JSON 数据。以下是一个简单的例子:
import json# JSON 数据
json_str = '{"name": "Alice", "age": 25, "city": "Beijing"}'# 解析 JSON 数据
data = json.loads(json_str)# 打印解析后的数据
print(data['name'])
print(data['age'])
print(data['city'])
输出结果:
Alice
25
Beijing
在上面的例子中,我们首先定义了一个 JSON 字符串 json_str,然后使用 json.loads() 方法将其解析为 Python 对象 data。解析后的数据可以像字典一样进行访问。如果需要将 Python 对象转换为 JSON 字符串,可以使用 json.dumps() 方法。例如:
import json# Python 对象
data = {'name': 'Bob','age': 30,'city': 'Shanghai'
}# 转换为 JSON 字符串
json_str = json.dumps(data)# 打印转换后的 JSON 字符串
print(json_str)输出结果:
{"name": "Bob", "age": 30, "city": "Shanghai"}
Python3 日期和时间
Python3 中有一个内置的模块 datetime 可以用来处理日期和时间。下面是一些常用的日期和时间操作:
获取当前日期和时间
import datetimenow = datetime.datetime.now()
print("当前日期和时间:", now)
获取指定日期和时间
import datetimedt = datetime.datetime(2022, 12, 31, 23, 59, 59)
print("指定日期和时间:", dt)格式化输出日期和时间import datetimenow = datetime.datetime.now()
print("格式化输出日期和时间:", now.strftime("%Y-%m-%d %H:%M:%S"))日期和时间的加减import datetimenow = datetime.datetime.now()
print("当前日期和时间:", now)new_time = now + datetime.timedelta(days=3, hours=2, minutes=30)
print("加上3天2小时30分钟后的日期和时间:", new_time)new_time = now - datetime.timedelta(weeks=1)
print("减去1周后的日期和时间:", new_time)
这些只是 datetime 模块的一些常用操作,还有很多其他的功能,具体可以参考官方文档。
什么是时间元组?
时间元组(Time tuple)是指一个包含9个元素的元组,用于表示时间信息,包括年、月、日、时、分、秒、一周中的第几天、一年中的第几天、是否为夏令时。时间元组的格式如下:
time_tuple = (year, month, day, hour, minute, second, weekday, yearday, isdst)
其中,各元素的含义如下:
year:年份,如2021
month:月份,取值范围为1~12
day:日期,取值范围为1~31
hour:小时,取值范围为0~23
minute:分钟,取值范围为0~59
second:秒数,取值范围为0~59
weekday:一周中的第几天,取值范围为0~6(0表示周一,1表示周二,以此类推)
yearday:一年中的第几天,取值范围为1~366
isdst:是否为夏令时,取值为0、1或-1。其中,0表示不是夏令时,1表示是夏令时,-1表示未知(默认为-1)
时间元组常用于时间的转换、计算和格式化等操作。在 Python 中,可以使用标准库中的 time 模块来操作时间元组。
获取当前时间
获取当前时间可以使用 Python 的内置模块 datetime 中的 datetime 类。下面是获取当前时间的示例代码:
import datetimenow = datetime.datetime.now()
print("当前时间:", now)
输出结果类似于:
当前时间: 2022-10-31 16:15:30.123456
其中,now() 方法返回当前日期和时间的 datetime 对象。如果需要格式化输出当前时间,可以使用 strftime() 方法,具体使用方法可以参考我之前的回答。
获取格式化的时间
在 Python 中,可以使用 time 模块中的 strftime() 函数来获取格式化的时间。strftime() 函数的语法如下:
strftime(format[, tuple])
其中,format 参数是格式化字符串,用于指定输出时间的格式。常用的格式化字符串如下:
另外,tuple 参数是时间元组,用于指定要格式化的时间。如果不指定该参数,则默认使用当前时间。
以下是一个简单的例子,演示如何使用 strftime() 函数获取格式化的时间:
import time# 获取当前时间
now = time.localtime()
# 格式化时间
time_str = time.strftime("%Y-%m-%d %H:%M:%S", now)
# 打印格式化后的时间
print(time_str)
输出结果:
2023-06-26 21:49:08
在上面的例子中,我们首先使用 localtime() 函数获取当前时间的时间元组,然后使用 strftime() 函数将其格式化为指定的格式,并将格式化后的字符串赋值给变量 time_str。最后,我们使用 print() 函数打印格式化后的时间。