zoukankan      html  css  js  c++  java
  • 常用模块之datetime模块

    和 之前的time模块,datetime模块更直观的打印出来。

    在开发工作中,我们经常需要用到日期与时间,如:

    • 作为日志信息的内容输出
    • 计算某个功能的执行时间
    • 用日期命名一个日志文件的名称
    • 记录或展示某文章的发布或修改时间
    • 其他

    常见的时间表示形式为

    • 时间戳
    • 格式化的时间字符串

    Python中还有其它的时间表示形式

    • time模块的time.struct_time
    • datetime模块的datetime类

    1. datetime模块中定义的类

    datetime模块定义了以下几个类:

    类名称描述
    datetime.date 表示日期,常用的属性有:year, month和day
    datetime.time 表示时间,常用属性有:hour, minute, second, microsecond
    datetime.datetime 表示日期时间主要是datetime.datetime
    datetime.timedelta 表示两个date、time、datetime实例之间的时间间隔,分辨率(最小单位)可达到微秒
    datetime.tzinfo 时区相关信息对象的抽象基类。它们由datetime和time类使用,以提供自定义时间的而调整。
    datetime.timezone Python 3.2中新增的功能,实现tzinfo抽象基类的类,表示与UTC的固定偏移量

    需要说明的是:这些类的对象都是不可变的。

     

    需要说明的是struct_time实例的各个属性都是只读的,不可修改。

    datetime.datetime类

    各参数的取值范围为:

    参数名称取值范围
    year [MINYEAR, MAXYEAR]
    month [1, 12]
    day [1, 指定年份的月份中的天数]
    hour [0, 23]
    minute [0, 59]
    second [0, 59]
    microsecond [0, 1000000]
    tzinfo tzinfo的子类对象,如timezone类的实例

    如果一个参数超出了这些范围,会引起ValueError异常。

    类方法和属性:

    类方法/属性名称描述
    datetime.today() 返回一个表示当前本期日期时间的datetime对象
    datetime.now([tz]) 返回指定时区日期时间的datetime对象,如果不指定tz参数则结果同上
    datetime.utcnow() 返回当前utc日期时间的datetime对象
    datetime.fromtimestamp(timestamp[, tz]) 根据指定的时间戳创建一个datetime对象
    datetime.utcfromtimestamp(timestamp) 根据指定的时间戳创建一个datetime对象
    datetime.combine(date, time) 把指定的date和time对象整合成一个datetime对象
    datetime.strptime(date_str, format) 将时间字符串转换为datetime对象

    ----->>>>对象方法和属性:

    对象方法/属性名称描述
    dt.year, dt.month, dt.day 年、月、日
    dt.hour, dt.minute, dt.second 时、分、秒
    dt.microsecond, dt.tzinfo 微秒、时区信息
    dt.date() 获取datetime对象对应的date对象
    dt.time() 获取datetime对象对应的time对象, tzinfo 为None
    dt.timetz() 获取datetime对象对应的time对象,tzinfo与datetime对象的tzinfo相同
    dt.replace([year[, month[, day[, hour[, minute[, second[, microsecond[, tzinfo]]]]]]]]) 生成并返回一个新的datetime对象,如果所有参数都没有指定,则返回一个与原datetime对象相同的对象
    dt.timetuple() 返回datetime对象对应的tuple(不包括tzinfo)
    dt.utctimetuple() 返回datetime对象对应的utc时间的tuple(不包括tzinfo)
    dt.toordinal() 同date对象
    dt.weekday() 同date对象
    dt.isocalendar() 同date独享
    dt.isoformat([sep]) 返回一个‘%Y-%m-%d
    dt.ctime() 等价于time模块的time.ctime(time.mktime(d.timetuple()))
    dt.strftime(format) 返回指定格式的时间字符串

    *时间运算:

    >>>datetime.datetime.now() +datetime.timedate(hours = 4)

    *时间替换:

    d= datetime.datetime.now()

    d.replace(years= 18)

  • 相关阅读:
    UVA 10600 ACM Contest and Blackout(次小生成树)
    UVA 10369
    UVA Live 6437 Power Plant 最小生成树
    UVA 1151 Buy or Build MST(最小生成树)
    UVA 1395 Slim Span 最小生成树
    POJ 1679 The Unique MST 次小生成树
    POJ 1789 Truck History 最小生成树
    POJ 1258 Agri-Net 最小生成树
    ubuntu 用法
    ubuntu 搭建ftp服务器,可以通过浏览器访问,filezilla上传文件等功能
  • 原文地址:https://www.cnblogs.com/z18271397173/p/8508537.html
Copyright © 2011-2022 走看看