Python日期格式处理

本文介绍了Python在数据分析中处理日期型数据的方法,包括获取当前日期时间、日期时间格式化、日期转换为字符串、计算日期差以及时间戳的处理。示例展示了如何使用datetime和pandas库进行相关操作。
摘要由CSDN通过智能技术生成

数据分析工作中,Python和SQL是常用的两大工具。常见的数据类型有数值型,字符串型,日期型等,对日期型格式进行处理也是比较常见的情形,文章SQL中日期格式处理记录了SQL针对日期型字段的处理过程,本文记录Python对日期型数据的处理。

获取当前日期和时间

import datetime

print(datetime.datetime.now()) #年月日时分秒
print(datetime.datetime.now().date()) #年月日
print(datetime.datetime.now().time()) #时间
print(datetime.datetime.now().year) #年

日期时间格式化

import datetime
from datetime import datetime

#人工输入格式化日期
date1 = datetime.date(year=2023, month=6, day=17)
date2 = datetime.datetime(year = 2023, month = 6, day = 1, hour = 14, minute = 4)
#字符串转换为格式化日期
## 在知道字符串日期格式时可以使用strptime函数(%Y四位数年,%y两位数年,%m数字月,%B英文月(全拼),%b英文月(简写),%d数字天),%H 24制小时,%I 12制小时,%M分钟,%S秒
date3 = '6/17/2023'
print(datetime.strptime(date3,'%m/%d/%Y'))
## 不知道字符串日期对应格式时
from dateutil.parser import parser
date4 = parse(date3)
print(date4)

#日期转换为字符串-strpftime函数(%A星期几,%e每月第几天,%j每年第几天,%u每周第几天周一为1,%V每年第几周)
print(datetime.datetime.now().strftime('%b %d %y')) #标准python日期格式转换为制定格式字符串
#返回周几
dayofweek = datetime.datetime.now().strftime("%A")
print(dayofweek)
print(datetime.datetime.today().weekday()) #周一到周日 0-6
print( datetime.datetime.today().isoweekday()) #周一到周日 1-7

日期时间差

import datetime
from datetime import datetime

#计算两个日期之间的日期差
date1 = "2020-01-01"
date1 = datetime.datetime.strptime(date1,"%Y-%m-%d")
date2=datetime.datetime.now()
day_diff = date2 - date1
print(day_diff.days)

#日期差的日期
today = datetime.datetime.now()
yesterday= today - datetime.timedelta(days=1)

时间戳索引

#方法1:
import pandas as pd
import datetime
from datetime import datetime

date= [datetime(2020,5,1),'2020-6-1',datetime(2020,7,1)]
t = pd.to_datetime(date)
#方法2:
t = pd.DatetimeIndex(['5/1/2020','6/1/2020','7/1/2020'])
#方法3:
t = pd.date_range('1/1/2020','6/17/2023',freq='B') #工作日,默认是freq='D'返回每天日期索引
t = pd.date_range('2023-6-17',periods=10) #指定开始日期返回之后阶段索引
t = pd.bdate_range('2023-6-17',periods=10) #工作日索引
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值