IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> python 之 时间、日期、时间戳之间的各种转换 -> 正文阅读

[Python知识库]python 之 时间、日期、时间戳之间的各种转换

在将数据存储于MySQL、Oracle等时,对时间的操作会比较频繁,比如,数据第一次保存于数据库的时间(create_time),数据的更新时间(update_time),查询某个时间等等。在对时间进行操作时,往往会涉及到时间、日期、时间戳之间的各种转换,下面简单介绍几个常用的转换方法。

1、用到的模块
用到的模块有两个:time模块和datetime模块

import time,datetime


2、获取不同要求的时间(字符串格式)

from datetime import datetime, timedelta

today = datetime.now() ?# 今天
yesterday = today - timedelta(days=1) ?# 昨天
last_year_today = datetime(today.year - 1, today.month, today.day) ?# 去年今天
if today.month == 1:
? ? last_month_today = datetime(today.year - 1, 12, today.day, ) ?# 上月今日
else:
? ? last_month_today = datetime(today.year, today.month - 1, today.day, ) ?# 上月今日

print(f'当前时间是:{today}')
print(f'昨天当前时间是:{yesterday}')
print(f'去年今天是:{last_year_today}')
print(f'上月今日是:{last_month_today}')

运行结果:

当前时间是:2022-03-06 17:18:06.242593
昨天当前时间是:2022-03-05 17:18:06.242593
去年今天是:2021-03-06 00:00:00
上月今日是:2022-02-06 00:00:00

3、str-->时间戳

import time

nowTime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
print(f'字符类型的当前时间为:{nowTime}')
# 转为时间数组
nowTimeArray = time.strptime(nowTime, "%Y-%m-%d %H:%M:%S")
print(f'数组类型的当前时间为:{nowTimeArray}')
# 转为秒级时间戳
nowTimeStamp = str(int(time.mktime(nowTimeArray)))
print(f'时间戳类型的当前时间为:{nowTimeStamp}')

运行结果:

字符类型的当前时间为:2022-03-06 17:31:20
数组类型的当前时间为:time.struct_time(tm_year=2022, tm_mon=3, tm_mday=6, tm_hour=17, tm_min=31, tm_sec=20, tm_wday=6, tm_yday=65, tm_isdst=-1)
时间戳类型的当前时间为:1646559080

4、原始时间戳-->秒级、毫秒级、微秒级时间戳

import time

nowTimeStamp = time.time()  # 原始时间数据
sNowTimeStamp = int(nowTimeStamp)  # 秒级时间戳
msNowTimeStamp = int(round(nowTimeStamp * 1000))  # 毫秒级时间戳
micNowTimeStamp = int(round(nowTimeStamp * 1000000))  # 微秒级时间戳

print(f'原始时间戳为:{nowTimeStamp}')
print(f'秒级时间戳为:{sNowTimeStamp}')
print(f'毫秒级时间戳为:{msNowTimeStamp}')
print(f'微秒级时间戳为:{micNowTimeStamp}')

运行结果:

原始时间戳为:1646559080.6776936
秒级时间戳为:1646559080
毫秒级时间戳为:1646559080678
微秒级时间戳为:1646559080677694

5、更改str类型日期的显示格式

tss2 = "2022-03-06 23:40:00"
# 将字符串格式的时间转为数组
timeArray = time.strptime(tss2, "%Y-%m-%d %H:%M:%S")
# 转为其它显示格式
otherStyleTime = time.strftime("%Y/%m/%d %H:%M:%S", timeArray)
print(otherStyleTime)  # 2022/03/06 23:40:00

tss3 = "2022/03/06 23:40:00"
timeArray = time.strptime(tss3, "%Y/%m/%d %H:%M:%S")
# 将字符串格式的时间转为数组
otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
print(otherStyleTime)  # 2022-03-06 23:40:00

6、时间戳转换为指定格式的日期

import datetime
import time

# 使用time模块实现
timeStamp = int(time.time())  # 当前时间的秒级时间戳
timeArray = time.localtime(timeStamp)
otherStyleTime = time.strftime("%Y--%m--%d %H:%M:%S", timeArray)
print(otherStyleTime)  # 2022--03--06 17:37:31

# 使用datetime模块实现
timeStamp = int(time.time())  # 当前时间的秒级时间戳
dateArray = datetime.datetime.fromtimestamp(timeStamp)
otherStyleTime = dateArray.strftime("%Y--%m--%d %H:%M:%S")
print(otherStyleTime)  # 2022--03--06 17:37:31

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-03-08 22:24:55  更:2022-03-08 22:25:38 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/31 4:24:03-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码