python time 与datetime之间的区别与联系

一.time模块

time模块提供各种操作时间的函数
  一般有两种表示时间的方式:
  第一种是时间戳的方式(相对于1970.1.1 00:00:00以秒计算的偏移量),时间戳是惟一的

#当前时间的时间戳  
In [9]: time.time()  
Out[9]: 1376102328.536908

第二种以数组的形式表示即(struct_time),共有九个元素,分别表示,同一个时间戳的struct_time会因为时区不同而不同

In [2]: time.localtime()  
Out[2]: time.struct_time(tm_year=2013, tm_mon=8, tm_mday=10, tm_hour=10, tm_min=30, tm_sec=47, tm_wday=5, tm_yday=222, tm_isdst=0)

gmtime()与mktime()可以将两种时间表示方法自由转换

In [22]: time.gmtime(time.time())  
Out[22]: time.struct_time(tm_year=2013, tm_mon=8, tm_mday=10, tm_hour=2, tm_min=46, tm_sec=54, tm_wday=5, tm_yday=222, tm_isdst=0)  
  
In [23]: time.mktime(time.localtime())  
Out[23]: 1376102845.0

strftime()可以将struct_time类型自由转换成字符型

In [24]: time.strftime("%Y%m%d", time.localtime())  
Out[24]: ‘20130810‘

strptime(string, format) 将时间字符串根据指定的格式化符转换成数组形式的时间

In [26]: time.strptime(‘20130810‘, "%Y%m%d")  
Out[26]: time.struct_time(tm_year=2013, tm_mon=8, tm_mday=10, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=5, tm_yday=222, tm_isdst=-1)

注意,不能直接将时间戳转换为字符串,时间串也不能直接转换为时间戳,只能通过localtime,利用mktime方法来转

二.datetime模块

In [27]: datetime.datetime.now()  
Out[27]: datetime.datetime(2013, 8, 10, 10, 56, 10, 611490)

strftime方法,可以将一个datetime型日期转换成字符串

In [28]: datetime.datetime.now().strftime("%Y%m%d")  
Out[28]: ‘20130810‘

datetime.strptime(date_string, format):将格式字符串转换为datetime对象

In [30]: datetime.datetime.strptime("20130810", "%Y%m%d")  
Out[30]: datetime.datetime(2013, 8, 10, 0, 0)

三.计算当前时间的前1天

one_day_before = datetime.datetime.today() - datetime.timedelta(days=1)

天:days

小时:hours

分钟:minutes

四.time与datetime之间的互相转换

time 转为datetime

a = time.time()
datetime.datetime.fromtimestamp(a)

datetime 转为time

b = datetime.datetime.now()
time.mktime(b.timetuple())

参考:http://iam42.iteye.com/blog/1922875

http://blog.csdn.net/hong201/article/details/3193121

时间: 2024-12-31 06:02:31

python time 与datetime之间的区别与联系的相关文章

python timestamp和datetime之间的转换

做开发中难免时间类型之间的转换, 最近就发现前端js和后端django经常要用到这个转换, 其中jsDate.now()精确到毫秒,而Python中Datetime.datetime.now()是精确到微秒的. 1. 字符串日期时间转换成时间戳 # '2015-08-28 16:43:37.283' --> 1440751417.283 # 或者 '2015-08-28 16:43:37' --> 1440751417.0 def string2timestamp(strValue): try

Python:urllib 和urllib2之间的区别

你可能对于Python中两个独立存在的-urllib2和-urllib2感到好奇.更有趣的是:它们并不是可以相互代替的.那么这两个模块间的区别是什么,并且这两个我们都需要吗? urllib 和urllib2都是接受URL请求的相关模块,但是提供了不同的功能.两个最显著的不同如下: urllib2可以接受一个Request类的实例来设置URL请求的headers,urllib仅可以接受URL.这意味着,你不可以伪装你的User Agent字符串等. urllib提供urlencode方法用来GET

2.python,pycharm,anaconda之间的区别与联系 - python基础入门

Python环境配置-Pycharm下载/Anaconda安装 中我们已经完成了 Pycharm 和Anaconda 的安装.可能对于刚接触的小伙伴还是比较懵逼的,一会python一会Anaconda一会又特么来了个pycharm,一串接一串英文,特么怎么读都还不知道!!! 一.python是什么 python是一门编程语言,当前比较流程的编程语言有C/C++  .JAVA .Object-C  .PHP等,当然python也是其中之一.每一种编程语言都有自己的语法和规范,要想通过python编

python之模块datetime详解

# -*- coding: utf-8 -*- #python 27 #xiaodeng #python之模块datetime详解 import datetime #data=datetime.date(2015,11,9)#表示日期的类 #data=datetime.time(hour[,minute[,second[,microsecond[,tzinfo]]]])#表示时间的类,从小时时间开始为参数 #data=datetime.datetime(year,month,day[,hour[

转 数据库中的 date datetime timestamp的区别

转 数据库中的 date datetime timestamp的区别 DATETIME, DATE和TIMESTAMP类型是相关的.本文描述他们的特征,他们是如何类似的而又不同的. DATETIME类型用在你需要同时包含日期和时间信息的值时.MySQL检索并且以'YYYY-MM-DD HH:MM:SS'格式显示DATETIME值,支持的范围是'1000-01-01 00:00:00'到'9999-12-31 23:59:59'.(“支持”意味着尽管更早的值可能工作,但不能保证他们可以.) DAT

python的list和数组的区别

list不是数组(额外安装Pynum) 1)可修改,list数据结构内容可以被程序修改 2)可动态增减,长度不固定 3)list里面的数据项可以是不同类型数据,也可以是list 4)两个list可"链接"(通过+加法)构成一个更大的list Python的list与数组的区别 1)数组一般是固定长度 2)数组通常是在{ }之间,list数据类型名后无{ } 3)数组的各个数据项数据类型必须相同 4)两数组不可直接"链接"构成新的更大数组 https://blog.c

UiAutomator和Appium之间的区别2

UiAutomator和Appium之间的区别和联系 联系: 在Android端,appium基于WebDriver协议,利用Bootstrap.jar,最后通过调?用UiAutomator的命令,实现App的自动化测试. UiAutomator测试框架是AndroidSDK自带的App UI自动化测试Java库. 1.UiAutomator——基于UIAutomation的用户界面自动化测试框架,可以跨应用工作: 2.UiAutomator只能测试Android native app 3.主要

Python中str()和repr()的区别

Python中str()和repr()的区别 区别 其实用处就是最大的区别了:str()主要用来为终端用户输出一些信息,而repr()主要用来调试:同时后者的目标是为了消除一些歧义(例如浮点数的精度问题),前者主要为了可读. 使用 In [12]: s = 'abc' In [13]: print(str(s)) abc In [14]: print(2.0/11) 0.18181818181818182 In [15]: repr(s) Out[15]: "'abc'" In [16

外发外协外包三者之间的区别与联系

1.应当贯彻顾客为中心原则,通过建立体系来控制过程,确保产品质量.不要化精力在符合标准要求上.如果您 的目标.产品的要求不切合顾客要求的话,就是符合了ISO 9001标准要求,不能满足顾客要求的,符合顾客要求了,顾客满意了,不注意质量成本,经济效益,也就不一定能赚到钱的. 2.7.4条采购要求是,如果您从质量管理体系外得到各种影响产品要求符合性的资源(过程也作为一种资源)的话,就必须对这些产品或者活动(也就是过程) 加以控制的."采购"英文是purchasing,"外包过程&