python 时间戳与格式化时间的转化实现代码

yipeiwu_com6年前Python基础

python 里面与时间有关的模块主要是 time 和 datetime

如果想获取系统当前时间戳:time.time() ,是一个float型的数据
获取系统当前的时间信息 : time.ctime() 是一个str类型的时间字符串,一般比较少用与开发中
如果想获得当前的普通日期字符串,可以简单的用str(datetime.date.today())

还有就是时间和时间戳之间的相互转化(很常用):

日期到时间戳上的转换:

import datetime
import time
t = datetime.datetime(2014,12, 6, 12, 10, 10)
timestamp = time.mktime(t.timetuple())
print timestamp

时间戳到时间日期的转换:

import datetime 
import time
t = time.localtime(timestamp)
timeStr = time.strftime('%Y-%m-%d %H:%M:%S', t)
print timeStr

有一个比较常用的的场景是:
根据某一天来推前几天或者未来几天的时间
比如我需要知道从2014-10-25以来的10天的数据
这样的话我们需要进行时间上的运算,如果按照本质,就是时间戳和时间之间的转换而已
我们可以通过时间转时间戳获取2014-10-25的时间戳,然后 进行时间戳上的运算,然后
再将运算的结果转成时间字符串就行了,完整代码如下:

import time
import datetime
t = datetime.datetime(2014, 10, 25)
timestamp = time.mktime(t.timetuple())
timestamp += 10 * 3600 * 24
t = time.localtime(timestamp)
timeStr = time.strftime('%Y-%m-%d %H:%M:%S', t)

其实date 模块有函数封装了这种算法,试用是没这么大的代码,不过咱们只讲原理,上面python时间的过程
其实对于任何语言应该都是这样一个过程

水一句: 语言工具不断在变,你不可能死守一门语言, 不会过时的只有算法与思维

相关文章

Python 比较文本相似性的方法(difflib,Levenshtein)

最近工作需要用到序列匹配,检测相似性,不过有点复杂的是输入长度是不固定的,举例为: input_and_output = [1, 2, '你好', 世界', 12.34, 45.6,...

python如何以表格形式打印输出的方法示例

python如何以表格形式打印输出的方法示例

好久不见,风水轮流转,我竟然写写写python了 近日有个小需求,要求收集统计一些信息上报,并直接在后台控制台打印,写入日志 为了美观,需要以表格形式展现数据,形如 虽说可以用 pre...

Python Matplotlib 基于networkx画关系网络图

Python Matplotlib 基于networkx画关系网络图

前言 昨天才开始接触,鼓捣了一个下午,接下来会持续更新,如果哪里有错误的地方,望各位大佬指出,谢谢! 数据描述 两个文件,一个文件包含了网络图的节点,节点存在类别(0,1,2,3)四类,...

通过C++学习Python

我会随便说,C++ 近年来开始"抄袭" Python 么?我只会说,我在用 C++ 来学习 Python. 不信?来跟着我学? 字面量 Python 早在 2.6 版本中就支持将二进制作...

Python 正则表达式操作指南

原文作者:A.M. Kuchling (amk@amk.ca) 授权许可:创作共享协议 翻译人员:FireHare 校对人员:Leal 适用版本:Python 1.5 及后续版本http...