timetime模块提供各种时间相关的功能,与时间相关的模块有:time,datetime,calendar等。

时间有三种表示方式,一种是时间戳、一种是格式化时间、一种是时间元组。时间戳和格式化时间的相互转化,都需要先转化为时间元祖。

时间戳单位最适于做日期运算。但是1970年之前的日期就无法以此表示了。太遥远的日期也不行,UNIX和Windows只支持到2038年。

import time #导入time模块

time.sleep(30) #等待30秒
time.strftime('%Y-%m-%d %H:%M:%S') #当前的格式化时间
time.time()#返回当前的时间戳

1、两种时间格式的转化

(1)格式化好的时间---->时间元组---->时间戳

time_tuple = time.strptime('2038-08-29 19:23:59','%Y-%m-%d %H:%M:%S')#格式化好的时间-->时间元组,前面写要转化的时间,后面该时间的的格式
time.mktime(time_tuple)#时间元组-->时间戳

(2)时间戳---->时间元组---->格式化好的时间

# 时间戳-->时间元组,有三种写法
res=time.gmtime(318915696)#时间戳---->时间元组,自己定义的时间
res=time.gmtime(time.time())#时间戳---->时间元组,接收时间戳,并返回格林威治天文时间下的时间元组。
res=time.localtime(time.time())#时间戳---->时间元组,当前时间,当前时区 # 时间元组---->格式化时间
time.strftime('%Y-%m-%d %H:%M:%S',res)

2、封装函数

#封装函数:格式化时间-->时间戳
def str_to_timestamp(time_str=None,format='%Y%m%d%H%M%S'): #给默认值,如果传来的有值就不用默认值
#格式化好的时间转时间戳的
#不传参数的话返回当前的时间戳
if time_str:#如果有值
time_tuple = time.strptime(time_str, format)
timestamp = time.mktime(time_tuple)
else:#如果传进来的没有值
timestamp = time.time()#那就返回当前时间戳
return int(timestamp)#转化成int格式去掉小数点 print(str_to_timestamp())#会返回当前的时间戳
print(str_to_timestamp(''))#不传格式
print(str_to_timestamp('2013-08-09','%Y-%m-%d'))#传格式
#封装函数:时间戳-->格式化时间
def timestamp_to_strtime(timestamp=None,format='%Y-%m-%d %H:%M:%S'):
#这个函数是用来把时间戳转成格式化好的时间
#如果不传时间戳的话,那么就返回当前的时间
if timestamp:#如果传了时间戳,那么转成格式化好的时间
time_tuple = time.localtime(timestamp)
str_time = time.strftime(format,time_tuple)
else:#如果没有传,就返回当前格式化好的时间
str_time = time.strftime(format)
return str_time

3、练习:怎么取3天前的当前时间

提示: 用当前的时间戳-3天的秒数,时间戳转成格式化好的时间

five = str_to_timestamp() - (3*24*60*60)#当前时间戳-3天的秒数
res = timestamp_to_strtime(five)
print('50年后的时间是',res)

python学习笔记:模块——time模块的更多相关文章

  1. Python 学习笔记(6)--常用模块(2)

    一.下载安装 下载安装有两种方式: yum\pip\apt-get 或者源码 下载源码 解压源码 进入目录 编译源码 python setup.py build 安装源码 python setup.p ...

  2. python学习笔记之常用模块(第五天)

    参考老师的博客: 金角:http://www.cnblogs.com/alex3714/articles/5161349.html 银角:http://www.cnblogs.com/wupeiqi/ ...

  3. python学习笔记13(模块、包)

    在Python中有一个概念叫做模块(module),比如在Python中要调用sqrt函数,必须用import关键字引入math这个模块,下面就来了解一下Python中的模块. 模块文件以.py后缀结 ...

  4. python学习笔记(九)、模块

    1 模块 使用import 语句从外部导入模块信息,python提供了很大内置模块.当你导入模块时,你会发现其所在目录中,除源代码文件外,还新建了一个名为__pycache__的子目录(在较旧的Pyt ...

  5. Python学习笔记十_模块、第三方模块安装、模块导入

    一.模块.包 1.模块 模块实质上就是一个python文件.它是用来组织代码的,意思就是把python代码写到里面,文件名就是模块的名称,test.py test就是模块的名称 2.包 包,packa ...

  6. Python学习笔记三:模块

    一:模块 一个模块就是一个py文件,里面定义了一些业务函数.引用模块,可以用import语句导入.导入模块后,通过 模块.函数名(参数)  来使用模块中的函数.如果存在多个同名模块,则前面模块名需要加 ...

  7. Python学习笔记:bisect模块实现二分搜索

    在Python中可以利用bisect模块来实现二分搜索,该模块包含函数只有几个: import bisect L = [1,3,4,5,5,5,8,10] x = 5 bisect.bisect_le ...

  8. python学习笔记(六):常用模块

    一.模块.包 什么是模块? 模块实质上就是一个python文件,它是用来组织代码的,意思就是说把python代码写到里面,文件名就是模块的名称,test.py test就是模块名称. 什么是包? 包, ...

  9. python 学习笔记8 (模块)

    Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 模块让你能够有逻辑地组织你的 Python 代码段. 把相关的代码 ...

  10. Python 学习笔记12 函数模块

    函数的优点之一,使用它们可将代码块与主程序分离.通过给函数指定描述性的名称.可以让主程序非常好理解.但是如果将过多的函数和主程序放置在一起,会让文件显得非常凌乱.太多的代码混杂在一起,不方便管理.我们 ...

随机推荐

  1. IDEA-Tomcat 运行报错

    我的问题是SDK版本不一致

  2. 将本地图片数据制作成内存对象数据集|tensorflow|手写数字制作成内存对象数据集|tf队列|线程

      样本说明: tensorflow经典实例之手写数字识别.MNIST数据集. 数据集dir名称 每个文件夹代表一个标签label,每个label中有820个手写数字的图片 标签label为0的文件夹 ...

  3. apache 安装配置 (centos)

    1. 使用yum包安装Apache软件 [root@Apache ~]# yum -y install httpd* [root@Apache ~]# rpm -qa | grep httpd --查 ...

  4. docker 实战

    创建镜像 docker pull ubuntu 创建容器 docker run -it -name web ubuntu /bin/bash 更新软件源信息 apt-get update 安装ssh  ...

  5. [FW]使用kprobes查看内核内部信息

    使用printk打印变量等方法,是调试内核的有效方法之一,但是这种方法必须重新构建并用新内核启动,调试效率比较低.以内核模块的方式使用kprobes.jprobes,就可以在任意地址插入侦测器,执行包 ...

  6. 一文搞懂--Java中重写equals方法为什么要重写hashcode方法?

    Java中重写equals方法为什么要重写hashcode方法? 直接看下面的例子: 首先我们只重写equals()方法 public class Test { public static void ...

  7. C# 中类重写 ToString 方法

    一,C# 中的每个类或结构都隐式继承 Object 类.因此,C# 中的每个对象都会获得 ToString 方法,此方法返回该对象的字符串表示形式.而同时在Object 中的ToString是虚方法则 ...

  8. spring集成rabbitMq(非springboot)

    首先 , pom文件需要加入spring集成rabbitMq的依赖: <dependency> <groupId>org.springframework.amqp</gr ...

  9. js实现图片延迟加载原理

    <img src="image/1188695.png" alt="taobao" trueImg="image/1.jpg" id= ...

  10. mybatis-generator 代码自动生成插件

    Hibernate 可以选择MyEclipse Datebase Explorer 或者是 Hibernate-tools 等工具来自动生成映射文件和实体类. mybatis 当然也要有!下面简单介绍 ...