相比于time模块,datetime模块的接口则更直观,更容易调用。

datetime模块定义了下面这几个类:

  • datetime.date:表示日期的类,常用的属性有year,month,day;
  • datetime.time:表示时间的类,常用的属性有hour,minute,second,microsecond;
  • datetime.datetime:表示日期时间。
  • datetime.timedelta:表示时间间隔,即两个时间点之间的长度。
  • datetime.tzinfo:与时区有关的相关信息。(这里不详细充分讨论该类,感兴趣的童鞋可以参考python手册)

我们需要记住的方法仅以下几个:

1.d = datetime.datetime.now() 返回当前的datetime日期类型

d.timestamp(),d.today(),d.year(),d.timetuple()等方法可以调用 #d.timetuple()是转换成struc_time,同时,小时、分、秒会丢失,全部为0。

  2.datetime.date.fromtimestamp(2333) 把一个时间戳转为datetime日期类型

3.时间运算 datetime.timedelta(days=,hours=,minutes=,seconds=)

>>> datetime.datetime.now()
datetime.datetime(2019, 3, 4, 20, 56, 31, 592532)
>>> datetime.datetime.now() + datetime.timedelta(4) #当前时间 + 4天
datetime.datetime(2019, 3, 8, 21, 1, 40, 774147)
>>> datetime.datetime.now() + datetime.timedelta(hours = 4) #当前时间 + 4个小时
datetime.datetime(2019, 3, 5, 1, 2, 9, 237469)

4.时间替换  每个参数都可以被替换

>>> d = datetime.datetime.now()
>>> d
datetime.datetime(2019, 3, 4, 21, 5, 23, 590968)
>>> d.replace(year = 2018)
datetime.datetime(2018, 3, 4, 21, 5, 23, 590968)
>>> d.replace(year = 2018,month=6)
datetime.datetime(2018, 6, 4, 21, 5, 23, 590968)
>>> d
datetime.datetime(2019, 3, 4, 21, 5, 23, 590968)

Python全栈之路----常用模块----datetime模块详解的更多相关文章

  1. Python全栈之路----常用模块----hashlib加密模块

    加密算法介绍 HASH       Python全栈之路----hash函数 Hash,一般翻译做“散列”,也有直接音译为”哈希”的,就是把任意长度的输入(又叫做预映射,pre-image),通过散列 ...

  2. Python全栈之路----常用模块----re 模块

    正则表达式就是字符串的匹配规则,在多数编程语言里都有相应的支持,python里对应的模块是 re. re的匹配语法有以下几种 re.match 从头开始匹配 re.search 匹配包含 re.fin ...

  3. Python全栈之路----常用模块学习----模块的种类和导入方法

    什么是模块? 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码 ...

  4. Python全栈之路----常用模块----序列化(json&pickle&shelve)模块详解

    把内存数据转成字符,叫序列化:把字符转成内存数据类型,叫反序列化. Json模块 Json模块提供了四个功能:序列化:dumps.dump:反序列化:loads.load. import json d ...

  5. Python全栈之路----常用模块----软件开发目录规范

    目录基本内容 log  #日志目录 conf  #配置目录 core/luffycity  #程序核心代码目录  #luffycity 是项目名,建议用小写 libs/modules  #内置模块 d ...

  6. Python全栈之路----常用模块----logging模块

    很多程序都有记录日志的需求,并且日志中包含的信息即有正常的程序访问日志,还可能有错误.警告等信息输出,python的logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,loggin ...

  7. Python全栈之路----常用模块----subprocess模块

    我们经常需要通过Python去执行一条系统命令或脚本,系统的shell命令是独立于你的python进程之外的,每执行一条命令,就是发起一个新进程,通过python调用系统命令或脚本的模块在python ...

  8. Python全栈之路----常用模块----shutil模块

    高级的 文件.文件包.压缩包 处理模块   参考Python之路[第四篇]:模块     #src是原文件名,fdst是新文件名 shutil.copyfileobj(fsrc, fdst[, len ...

  9. Python全栈之路----常用模块----xml处理模块

    xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单,不过,古时候,在json还没诞生的黑暗年代,大家只能选择用xml呀,至今很多传统公司如金融行业的很多系统的 ...

随机推荐

  1. 如何退出vim

    按ESC键 按ESC键 按ESC键 然后: 最下面出现一条能输入命令的地方 输入冒号 输入冒号 输入冒号 然后输入命令: :w 保存文件但不退出 :w file 将修改另外保存到 file 中,不退出 ...

  2. vue 文件目录结构详解

    vue 文件目录结构详解 本篇文章主要介绍了vue 文件目录结构详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 项目简介 基于 vue.js 的前端开发环境,用于前后 ...

  3. [CodeForces 372A] Counting Kangaroos is Fun

    题目链接:http://codeforces.com/problemset/problem/372/A 二分思想 AC代码: #include <cstdio> #include < ...

  4. LINQ之路14:LINQ Operators之排序和分组(Ordering and Grouping)

    本篇继续LINQ Operators的介绍,这里要讨论的是LINQ中的排序和分组功能.LINQ的排序操作符有:OrderBy, OrderByDescending, ThenBy, 和ThenByDe ...

  5. A_Pancers团队作业4—基于原型的团队项目需求调研与分析

    任务1:实施团队项目软件用户调研活动. (1)用户调研对象:我们的项目软件是基于安卓系统的音乐播放器,以设计出操作简单的音乐播放器为目的,所以本次用户调研的对象主要以身边的老人为主,对他们听音乐,听戏 ...

  6. Jellyfish详解

    一.Jellyfish简介 JELLYFISH是CBCB(Center for Bioinformatics and Computational Biology)的Guillaume Marçais ...

  7. scala面试题总结

    一.scala语言有什么特点?什么是函数式编程?有什么优点? 1.scala语言集成面向对象和函数式编程 2.函数式编程是一种典范,将电脑的运算视作是函数的运算. 3.与过程化编程相比,函数式编程里的 ...

  8. Lab 7-1

    Analyze the malware found in the file Lab07-01.exe. Questions and Short Answers How does this progra ...

  9. php 搜索附近人及SQL语句的写法

    /** * 根据经纬度和半径查询在此范围内的所有 * @param String $lat 纬度 * @param String $lng 经度 * @param float $radius 半径 * ...

  10. 获取url "?" 后面的字符串

    今天写了一个URL “?” 后面的字符串 来改变当前页面的状态 首先需要获取当前页面的URL console.log(widow.location) 之后页面就会打印出来当前的URL 之后我们获取UR ...