Python - 处理日期时间

Python - 处理日期时间 首页 / 数据科学入门教程 / Python - 处理日期时间

在数据科学中,无涯教程经常需要基于时间值的分析, Python可以优雅地处理各种日期和时间格式, datetime 库提供必要的方法来处理以下情况。

  • 日期时间表示
  • 日期时间计算
  • 日期时间比较

日期时间表示

日期及其各个部分通过使用不同的datetime函数表示,另外,有些格式说明符在显示日期的字母部分(如月份或星期几的名称)中起作用。以下代码显示了今天的日期和日期的各个部分。

import datetime

print 'The Date Today is  :', datetime.datetime.today()

date_today = datetime.date.today()
print date_today
print 'This Year   :', date_today.year
print 'This Month    :', date_today.month
print 'Month Name:',date_today.strftime('%B')
print 'This Week Day    :', date_today.day
print 'Week Day Name:',date_today.strftime('%A')

当执行上面的代码时,它将产生以下输出。

The Date Today is  : 2018-04-22 15:38:35.835000
2018-04-22
This Year   : 2018
This Month    : 4
Month Name: April
This Week Day    : 22
Week Day Name: Sunday

日期时间计算

对于涉及日期的计算,将各种日期存储到变量中,并将相关的数学运算符应用于这些变量。

import datetime 
 
# 第一天日期
day1 = datetime.date(2018, 2, 12)
print 'day1:', day1.ctime()

# 第二天日期
day2 = datetime.date(2017, 8, 18)
print 'day2:', day2.ctime()

# 查差的天数
print 'Number of Days:', day1-day2


date_today  = datetime.date.today() 

# 创建四天的增量
no_of_days = datetime.timedelta(days=4) 

# 四天前的日期
before_four_days = date_today - no_of_days 
print 'Before Four Days:', before_four_days 
 
# 四天后的日期
after_four_days = date_today + no_of_days 
print 'After Four Days:', after_four_days 

当执行上面的代码时,它将产生以下输出。

day1: Mon Feb 12 00:00:00 2018
day2: Fri Aug 18 00:00:00 2017
Number of Days: 178 days, 0:00:00
Before Four Days: 2018-04-18
After Four Days: 2018-04-26

日期时间比较

使用逻辑运算符比较日期和时间,但是在比较日期的正确部分时必须小心,在以下示例中 无涯教程获取未来和过去的日期,并使用python if子句和逻辑运算符进行比较。

链接:https://www.learnfk.comhttps://www.learnfk.com/python-data-science/python-date-and-time.html

来源:LearnFk无涯教程网

import datetime

date_today  = datetime.date.today() 

print 'Today is: ', date_today
# Create a delta of Four Days 
no_of_days = datetime.timedelta(days=4) 

# Use Delta for Past Date
before_four_days = date_today - no_of_days 
print 'Before Four Days:', before_four_days 

after_four_days =  date_today + no_of_days

date1 = datetime.date(2018,4,4)

print 'date1:',date1

if date1 == before_four_days :
    print 'Same Dates'
if date_today > date1:
    print 'Past Date'
if date1 < after_four_days:
    print 'Future Date'

当无涯教程执行上面的代码时,它将产生以下输出。

Today is:  2018-04-22
Before Four Days: 2018-04-18
date1: 2018-04-04
Past Date
Future Date

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

朱赟的技术管理课 -〔朱赟〕

数据分析实战45讲 -〔陈旸〕

编译原理之美 -〔宫文学〕

JavaScript核心原理解析 -〔周爱民〕

.NET Core开发实战 -〔肖伟宇〕

技术管理案例课 -〔许健〕

etcd实战课 -〔唐聪〕

深入拆解消息队列47讲 -〔许文强〕

手把手带你写一个 MiniTomcat -〔郭屹〕

好记忆不如烂笔头。留下您的足迹吧 :)