Python 时间标准化


Python中日期格式化是非常常见的操作,Python 中能用很多方式处理日期和时间,转换日期格式是一个常见的功能。

1.获取时间的基本方法
1.1 time.time()

time time() 函数返回当前时间的时间戳(1970纪元后经过的浮点秒数)。通常来说,时间戳表示的是从 1970 年 1 月 1 日 00:00:00 开始按秒计算的偏移量。

import time
timeStamp = time.time()
# print(current_time) 
# 输出: 1614846609.368156
1.2 time.localtime()

time localtime() 函数类似gmtime(),作用是格式化时间戳为本地的时间, 以时间元祖(struct_time)的形式返回。

import time
struct_time = time.localtime()
# print(struct_time) 
# 输出: time.struct_time(tm_year=2021, tm_mon=3, tm_mday=4, tm_hour=16, tm_min=30, tm_sec=10, tm_wday=3, tm_yday=63, tm_isdst=0)
1.3 datetime.datetime.now()
import datetime
data_time = datetime.datetime.now()
# print(data_time)
# 输出: 2021-03-04 16:30:10.000000
2. 格式化时间(基于时间元祖)

下面我们对 struct_time = time.localtime() 获取的时间元祖形式的时间进行格式化.

2.1 time.asctime()
format_time_1 = time.asctime(struct_time)
# print(format_time_1)
# 输出: Thu Mar  4 16:30:10 2021
2.2 time.strftime()
format_time_2 = time.strftime("%Y-%m-%d %H:%M:%S", struct_time) 
# print(format_time_2)
# 输出: 2021-03-04 16:30:10

python中时间日期格式化符号:

%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%M 分钟数(00=59)
%S 秒(00-59)
3. 时间的常用操作
3.1 字符串时间转换为时间戳
t = "2021-03-04 16:30:10"
#将其转换为时间数组
timeStruct = time.strptime(t, "%Y-%m-%d %H:%M:%S" )
#转换为时间戳:
timeStamp = int (time.mktime(timeStruct))
# print (timeStamp)
# 输出: 1614846610
3.2 时间戳转换为指定格式日期
timeStamp = 1614846610
localTime = time.localtime(timeStamp)
strTime = time.strftime( "%Y-%m-%d %H:%M:%S" , localTime)
print (strTime)
# 输出: 2021-03-04 16:30:10
3.3 获得三天前的时间
import time
import datetime
#先获得时间数组格式的日期
threeDayAgo = (datetime.datetime.now() - datetime.timedelta(days=3))
#转换为时间戳:
timeStamp = int(time.mktime(threeDayAgo.timetuple()))
#转换为其他字符串格式:
strTime = threeDayAgo.strftime( "%Y-%m-%d %H:%M:%S" )
# print (strTime)
# 输出: 2021-03-01 16:30:10
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值