python中对时间处理的几个函数
浏览:2370次 出处信息
在C/C++中,我们存储时间时,一般都会使用unix时间戳,使用也非常简单:
1 |
time_t t = time(NULL); |
关于用C++实现string和time_t的转化,本博也专门写了一篇文章:
时间time_t和string(char*)格式互转
但是在python中怎么实现操作unix时间戳呢?
本博也特意写了代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# -*- coding: utf-8 -*- import time import datetime def StringToTime(strtime): t_tuple = time.strptime(strtime,"%Y-%m-%d %H:%M:%S") return time.mktime(t_tuple) def StringToTime2(strtime): dt = datetime.datetime.strptime(strtime,"%Y-%m-%d %H:%M:%S") t_tuple = dt.timetuple() return time.mktime(t_tuple) def TimeToString(timestamp): t_tuple = time.localtime(timestamp) dt = datetime.datetime(*t_tuple[:6]) return dt.strftime("%Y-%m-%d %H:%M:%S") def GetYesterday(): d = datetime.datetime(*time.localtime()[:6]) t = datetime.timedelta(days=1) return (d-t) if __name__ == "__main__": timestamp = StringToTime("2010-10-20 1:2:2") print timestamp timestamp = StringToTime2("2010-10-20 1:2:2") print timestamp strtime = TimeToString(timestamp) print strtime print '-------------------------------------------' print GetYesterday() |
运行结果如下:
1287507722.0 1287507722.0 2010-10-20 01:02:02 ------------------------------------------- 2010-10-26 18:09:28
可以使用C++版的互相读取一下试试,经测试是可用的。
另外,上面的代码中我还定义了一个GetYesterday的函数,演示的实际上是时间差的操作,timedelta的细节可以参看这里:
http://docs.python.org/library/datetime.html#datetime.timedelta
参考文档:
http://www.51testing.com/?uid-175444-action-viewspace-itemid-213738
另:
偶尔发现想起的一个问题,在python中获取进程id和线程id的代码分别为:
1 2 3 4 5 |
import thread import os print os.getpid() print thread.get_ident() |
建议继续学习:
- 配置Nginx+uwsgi更方便地部署python应用 (阅读:105381)
- 如何成为Python高手 (阅读:53378)
- python实现自动登录discuz论坛 (阅读:31573)
- python编程细节──遍历dict的两种方法比较 (阅读:18983)
- 每个程序员都应该学习使用Python或Ruby (阅读:16250)
- 30分钟3300%性能提升――python+memcached网页优化小记 (阅读:12110)
- 使用python爬虫抓站的一些技巧总结:进阶篇 (阅读:12094)
- 我的PHP,Python和Ruby之路 (阅读:11825)
- Python处理MP3的歌词和图片 (阅读:8310)
- 关于使用python开发web应用的几个库总结 (阅读:7423)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
<< 前一篇:Effective C++ 3rd 的一点评论
后一篇:如何在Myeclipse下安装和使用svn客户端插件 >>
文章信息
- 作者:Dante 来源: Vimer
- 标签: python 时间
- 发布时间:2010-10-27 08:51:53
建议继续学习
近3天十大热文
- [68] Go Reflect 性能
- [68] 如何拿下简短的域名
- [67] Oracle MTS模式下 进程地址与会话信
- [62] IOS安全–浅谈关于IOS加固的几种方法
- [61] 图书馆的世界纪录
- [60] 【社会化设计】自我(self)部分――欢迎区
- [58] android 开发入门
- [56] 视觉调整-设计师 vs. 逻辑
- [49] 给自己的字体课(一)——英文字体基础
- [48] 读书笔记-壹百度:百度十年千倍的29条法则