Python处理日期和时间的方法总结

目录
  • 1 简单入门
    • 1.1 获取当前时间
    • 1.2 获取当前日期
    • 1.3 datetime中的类
  • 2 datetime中的常用的类
    • 2.1  date类
    • 2.2 time类
    • 2.3 datetime类
    • 2.4 datetime.timedelta类

1 简单入门

1.1 获取当前时间

import datetime

datetime_object = datetime.datetime.now()
print(datetime_object)

输出

2022-03-29 16:36:44.749582
 
Process finished with exit code 0

1.2 获取当前日期

import datetime

date_object = datetime.date.today()
print(date_object)

输出

2022-03-29
 
Process finished with exit code 0

1.3 datetime中的类

import datetime

print(dir(datetime))

输出

['MAXYEAR', 'MINYEAR', '__all__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'date', 'datetime', 'datetime_CAPI', 'sys', 'time', 'timedelta', 'timezone', 'tzinfo']
 
Process finished with exit code 0

2 datetime中的常用的类

  • date类
  • time类
  • datetime类
  • timedelta类

2.1  date类

(1)示例化date对象

import datetime

d = datetime.date(2022, 3, 29)
print(d)

输出

2022-03-29
 
Process finished with exit code 0

(2)获取当前日期

from datetime import date

today = date.today()

print("当前日期 =", today)

输出

当前日期 = 2022-03-29
 
Process finished with exit code 0

(3)从时间戳获取日期

我们还可以从时间戳创建日期对象。Unix时间戳是特定日期到UTC的1970年1月1日之间的秒数。可以使用fromtimestamp()方法将时间戳转换为日期。

from datetime import date

timestamp = date.fromtimestamp(1576244364)
print("日期 =", timestamp)

输出

日期 = 2019-12-13
 
Process finished with exit code 0

(4)打印今天的年,月和日

from datetime import date

# 今天的日期对象
today = date.today() 

print("当前年:", today.year)
print("当前月:", today.month)
print("当前日:", today.day)

输出

当前年: 2022
当前月: 3
当前日: 29
 
Process finished with exit code 0

2.2 time类

(1)从time类示例化的时间对象表示本地时间。

from datetime import time

# time(hour = 0, minute = 0, second = 0)
a = time()
print("a =", a)

# time(hour, minute and second)
b = time(11, 34, 56)
print("b =", b)

# time(hour, minute and second)
c = time(hour = 11, minute = 34, second = 56)
print("c =", c)

# time(hour, minute, second, microsecond)
d = time(11, 34, 56, 234566)
print("d =", d)

输出

a = 00:00:00
b = 11:34:56
c = 11:34:56
d = 11:34:56.234566
 
Process finished with exit code 0

(2)打印时,分,秒和微秒

from datetime import time

a = time(11, 34, 56)

print("小时=", a.hour)
print("分钟=", a.minute)
print("秒=", a.second)
print("微秒=", a.microsecond)

输出

小时= 11
分钟= 34
秒= 56
微秒= 0
 
Process finished with exit code 0

2.3 datetime类

(1)datetime模块有一个名为的dateclass类,可以包含来自date和time对象的信息。

from datetime import datetime

#datetime(year, month, day)
a = datetime(2019, 11, 28)
print(a)

# datetime(year, month, day, hour, minute, second, microsecond)
b = datetime(2019, 11, 28, 23, 55, 59, 342380)
print(b)

输出

2019-11-28 00:00:00
2019-11-28 23:55:59.342380
 
Process finished with exit code 0

(2)打印年,月,时,分和时间戳

from datetime import datetime

a = datetime(2022, 3, 29, 23, 55, 59, 342380)
print("年 =", a.year)
print("月 =", a.month)
print("日 =", a.day)
print("时 =", a.hour)
print("份 =", a.minute)
print("时间戳 =", a.timestamp())

输出

年 = 2022
月 = 3
日 = 29
时 = 23
份 = 55
时间戳 = 1648569359.34238
 
Process finished with exit code 0

2.4 datetime.timedelta类

(1)timedelta对象表示两个日期或时间之间的时差。

from datetime import datetime, date

t1 = date(year = 2018, month = 7, day = 12)
t2 = date(year = 2017, month = 12, day = 23)
t3 = t1 - t2
print("t3 =", t3)

t4 = datetime(year = 2018, month = 7, day = 12, hour = 7, minute = 9, second = 33)
t5 = datetime(year = 2019, month = 6, day = 10, hour = 5, minute = 55, second = 13)
t6 = t4 - t5
print("t6 =", t6)

print("type of t3 =", type(t3))
print("type of t6 =", type(t6))

输出

t3 = 201 days, 0:00:00
t6 = -333 days, 1:14:20
type of t3 = <class 'datetime.timedelta'>
type of t6 = <class 'datetime.timedelta'>
 
Process finished with exit code 0

(2)两个timedelta对象之间的时间差

from datetime import timedelta

t1 = timedelta(weeks = 2, days = 5, hours = 1, seconds = 33)
t2 = timedelta(days = 4, hours = 11, minutes = 4, seconds = 54)
t3 = t1 - t2

print("t3 =", t3)

输出

t3 = 14 days, 13:55:39
 
Process finished with exit code 0

到此这篇关于Python处理日期和时间的方法总结的文章就介绍到这了,更多相关Python日期时间处理内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python实用日期时间处理方法汇总

    原则, 以datetime为中心, 起点或中转, 转化为目标对象, 涵盖了大多数业务场景中需要的日期转换处理 步骤: 1. 掌握几种对象及其关系 2. 了解每类对象的基本操作方法 3. 通过转化关系转化 涉及对象 1. datetime 复制代码 代码如下: >>> import datetime >>> now = datetime.datetime.now() >>> now datetime.datetime(2015, 1, 12, 23, 9

  • 详解python日期时间处理

    目录 开发中常用的日期操作有哪些? 我们看看这两个模块. time 内置模块 calender 内置模块 日期格式化处理 总结 讲了很多数据容器操作,这篇我们看看时间的处理. 开发中常用的日期操作有哪些? 获取当前时间 获取系统秒数(从纪元时间开始) 日期跟秒数之间转换 获取日历等 日期格式化显示输出 这些都非常常见 在python 主要有下面两个模块涵盖了常用日期处理 import time import calender 我们看看这两个模块. time 内置模块 #!/usr/bin/env

  • 详解python日期时间处理2

    目录 开发中常用的日期操作还有哪些? 我们看看这两个模块. 时间处理中的类型转换:struct_time vs str 时间与字符串转换 总结 前篇我们稍微学习了Python中时间的获取,这次继续学习日期的时区转换,格式化等等. 开发中常用的日期操作还有哪些? 时区转换显示 日期格式化 秒数 与 日期 与 字符串的转换 我们经常会用到,比如全球化的业务根据不同客户显示不同时间(格式等) 在python 主要有下面两个模块涵盖了常用日期处理 import time import calender

  • Python中的日期时间处理详解

    Python中关于时间.日期的处理库有三个:time.datetime和Calendar,其中datetime又有datetime.date.datetime.time.datetime.datetime三个类.而时间又可以分为时间戳.本地时间和UTC时间(世界标准时间).是不是听起来有点乱?那么他们相互之间有什么区别?有什么联系?又如何转换呢? time模块 在time模块中,时间有三种表现形式: 时间戳,一般指Unix时间戳,是从1970年开始到现在的秒数. 本地时间的struct_time

  • Python常用的日期时间处理方法示例

    #-*- coding: utf-8 -*- import datetime #给定日期向后N天的日期 def dateadd_day(days): d1 = datetime.datetime.now() d3 = d1 + datetime.timedelta(days) return d3 #昨天 def getYesterday(): today = datetime.date.today() oneday = datetime.timedelta(days=1) yesterday =

  • python操作日期和时间的方法

    不管何时何地,只要我们编程时遇到了跟时间有关的问题,都要想到 datetime 和 time 标准库模块,今天我们就用它内部的方法,详解python操作日期和时间的方法.1.将字符串的时间转换为时间戳 复制代码 代码如下: 方法:a = "2013-10-10 23:40:00"#将其转换为时间数组import timetimeArray = time.strptime(a, "%Y-%m-%d %H:%M:%S")#转换为时间戳:timeStamp = int(t

  • Python处理日期和时间的方法总结

    目录 1 简单入门 1.1 获取当前时间 1.2 获取当前日期 1.3 datetime中的类 2 datetime中的常用的类 2.1  date类 2.2 time类 2.3 datetime类 2.4 datetime.timedelta类 1 简单入门 1.1 获取当前时间 import datetime datetime_object = datetime.datetime.now() print(datetime_object) 输出 2022-03-29 16:36:44.7495

  • python中日期和时间格式化输出的方法小结

    本文实例总结了python中日期和时间格式化输出的方法.分享给大家供大家参考.具体分析如下: python格式化日期时间的函数为datetime.datetime.strftime():由字符串转为日期型的函数为:datetime.datetime.strptime(),两个函数都涉及日期时间的格式化字符串,这里提供详细的代码详细演示了每一个参数的使用方法及范例. 下面是格式化日期和时间时可用的替换符号 %a 输出当前是星期几的英文简写 >>> import datetime >&

  • Python正则表达式匹配日期与时间的方法

    下面给大家介绍下Python正则表达式匹配日期与时间 #!/usr/bin/env python # -*- coding: utf-8 -*- __author__ = 'Randy' import re from datetime import datetime test_date = '他的生日是2016-12-12 14:34,是个可爱的小宝贝.二宝的生日是2016-12-21 11:34,好可爱的.' test_datetime = '他的生日是2016-12-12 14:34,是个可

  • python获取当前日期和时间的方法

    本文实例讲述了python获取当前日期和时间的方法.分享给大家供大家参考.具体如下: import datetime # Get a datetime object now = datetime.datetime.now() # General functions print "Year: %d" % now.year print "Month: %d" % now.month print "Day: %d" % now.day print &q

  • python获取标准北京时间的方法

    本文实例讲述了python获取标准北京时间的方法.分享给大家供大家参考.具体分析如下: 这段python代码主要通过www.beijing-time.org的官网上获取标准的北京时间,如果你的服务器挂在网上,你可以通过这段代码定时获取北京时间,然后更新自己系统的标准时间. import time,httplib def getBeijinTime(): try: conn = httplib.HTTPConnection("www.beijing-time.org") conn.req

  • 在 Linux/Mac 下为Python函数添加超时时间的方法

    我们在使用 requests 这类网络请求第三方库时,可以看到它有一个参数叫做 timeout ,就是指在网络请求发出开始计算,如果超过 timeout 还没有收到返回,就抛出超时异常.(当然存在特殊情况timeout 会失效,请看Timeouts and cancellation for humans* 这篇文章中作者的举例,我们不考虑这种特殊情况). 但大家有没有考虑过,如何为普通的函数设置超时时间?特别是在运行一些数据处理.AI 相关的代码时,某个函数可能会运行很长时间,我们想实现,在函数

  • JAVA 格式化日期、时间的方法

    使用 DateFormat 格式化日期.时间 DateFormat 也是一个抽象类,它也提供了如下几个类方法用于获取 DateFormat 对象. getDateInstance():返回一个日期格式器,它格式化后的字符串只有日期,没有时间.该方法可以传入多个参数,用于指定日期样式和 Locale 等参数:如果不指定这些参数,则使用默认参数. getTimeInstance():返回一个时间格式器,它格式化后的字符串只有时间,没有日期.该方法可以传入多个参数,用于指定时间样式和 Locale 等

  • python 获取域名到期时间的方法步骤

    需求: 我要查询百度域名的到期时间或者开始时间 思路分析: 如果在linux系统中直接使用下面命令即可: echo | openssl s_client -servername www.baidu.com -connect www.baidu.com:443 2>/dev/null | openssl x509 -noout -dates|egrep 'notAfter'|awk -F'=|GMT' '{print $2}' 但是这个命令使用python2 的commands执行不成功,所以只能

  • Python之日期与时间处理模块(date和datetime)

    前言 在开发工作中,我们经常需要用到日期与时间,如: 作为日志信息的内容输出 计算某个功能的执行时间 用日期命名一个日志文件的名称 记录或展示某文章的发布或修改时间 其他 Python中提供了多个用于对日期和时间进行操作的内置模块:time模块.datetime模块和calendar模块.其中time模块是通过调用C库实现的,所以有些方法在某些平台上可能无法调用,但是其提供的大部分接口与C标准库time.h基本一致.time模块相比,datetime模块提供的接口更直观.易用,功能也更加强大.

随机推荐