python学习笔记:模块——time模块
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模块的更多相关文章
- Python 学习笔记(6)--常用模块(2)
一.下载安装 下载安装有两种方式: yum\pip\apt-get 或者源码 下载源码 解压源码 进入目录 编译源码 python setup.py build 安装源码 python setup.p ...
- python学习笔记之常用模块(第五天)
参考老师的博客: 金角:http://www.cnblogs.com/alex3714/articles/5161349.html 银角:http://www.cnblogs.com/wupeiqi/ ...
- python学习笔记13(模块、包)
在Python中有一个概念叫做模块(module),比如在Python中要调用sqrt函数,必须用import关键字引入math这个模块,下面就来了解一下Python中的模块. 模块文件以.py后缀结 ...
- python学习笔记(九)、模块
1 模块 使用import 语句从外部导入模块信息,python提供了很大内置模块.当你导入模块时,你会发现其所在目录中,除源代码文件外,还新建了一个名为__pycache__的子目录(在较旧的Pyt ...
- Python学习笔记十_模块、第三方模块安装、模块导入
一.模块.包 1.模块 模块实质上就是一个python文件.它是用来组织代码的,意思就是把python代码写到里面,文件名就是模块的名称,test.py test就是模块的名称 2.包 包,packa ...
- Python学习笔记三:模块
一:模块 一个模块就是一个py文件,里面定义了一些业务函数.引用模块,可以用import语句导入.导入模块后,通过 模块.函数名(参数) 来使用模块中的函数.如果存在多个同名模块,则前面模块名需要加 ...
- Python学习笔记:bisect模块实现二分搜索
在Python中可以利用bisect模块来实现二分搜索,该模块包含函数只有几个: import bisect L = [1,3,4,5,5,5,8,10] x = 5 bisect.bisect_le ...
- python学习笔记(六):常用模块
一.模块.包 什么是模块? 模块实质上就是一个python文件,它是用来组织代码的,意思就是说把python代码写到里面,文件名就是模块的名称,test.py test就是模块名称. 什么是包? 包, ...
- python 学习笔记8 (模块)
Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 模块让你能够有逻辑地组织你的 Python 代码段. 把相关的代码 ...
- Python 学习笔记12 函数模块
函数的优点之一,使用它们可将代码块与主程序分离.通过给函数指定描述性的名称.可以让主程序非常好理解.但是如果将过多的函数和主程序放置在一起,会让文件显得非常凌乱.太多的代码混杂在一起,不方便管理.我们 ...
随机推荐
- 转:inline-block 前世今生
曾几何时,display:inline-block 已经深入「大街小巷」,随处可见 「display:inline-block; *display:inline; *zoom:1; 」这样的代码.如今 ...
- java 重新学习 (七)
一.mysql的InnoDB通过建立行级索确保事务完整性.,并以Oracle风格的共享锁来处理select语句.系统默认存储为InnoDB. 二. -- mysql 创建表 CREATE TABLE ...
- Oralce分页
SELECT *FROM ( SELECT TMP_PAGE.*, ROWNUM ROW_ID FROM ( SELECT A . ID AS "id", A .bill_noti ...
- C# 笔记 获取程序当前目录
在C#中,我们有以下几种方式获取程序当前目录: Console.WriteLine(System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssem ...
- webpack + vue 打包生成公共配置文件(域名) 方便动态修改
需求原因 原来的项目中域名是打包到项目里面的,打包后不能动态配置,只能通过不同的指令打包来切换域名,每天都在测试域名和正式域名来回摩擦,后台大佬说你们可以生成一个配置文件这样就不用频繁打包了直接修改配 ...
- LeetCode Array Easy 268. Missing Number
Description Given an array containing n distinct numbers taken from 0, 1, 2, ..., n, find the one th ...
- ios开发之UIView和UIViewController
UIView 表示屏幕上的一块矩形区域,负责渲染区域的内容,并且响应该区域内发生的触摸事件.它在 iOS App 中占有绝对重要的地位,因为 iOS 中几乎所有可视化控件都是 UIView 的子类. ...
- redis与mysql一致性方案解析
一 前言 首先,缓存由于其高并发和高性能的特性,已经在项目中被广泛使用.在读取缓存方面,大家没啥疑问,都是按照下图的流程来进行业务操作 但是在更新缓存方面,对于更新完数据库,是更新缓存呢,还是删除缓存 ...
- showfont - 展示当前"显示屏-字体 映射"中的所有字符.
总览 showfont 描述 showfont 利用8-bit控制台模式的 Application Charset Map(应用字符集映射) 中一些连续的开关, 以当前字体在屏幕上展示所有的256个或 ...
- erlang应用程序启动
(1)erlang应用程序启动过程中,还可以分阶段启动. 在erlang应用程序的资源文件*.app可以定义分步骤启动. *.app中的start_phase字 ...