python3中time和datetime模块

python中有以下几种方式来表示时间:

一、时间戳格式

二、格式化的时间字符串

三、元组

time

1、time.time()返回时间戳,时间戳是从1970年开始计算的

>>> time.time()

1521532904.0696607

>>> x = time.time()

>>> x/60/60/24/365       //把时间戳换算成年

48.247492071975465

>>> 1970 + 48          //从1970年至今有48年

2018

2、sleep()方法,表示睡眠

>>> time.sleep(2)

3、把时间戳转换成元组的格式

>>> time.localtime()             //localtime为本地时区,小括号内可以传递秒数

time.struct_time(tm_year=2018, tm_mon=3, tm_mday=20, tm_hour=16, tm_min=10, tm_sec=51, tm_wday=1, tm_yday=79, tm_isdst=0

>>> time.gmtime()              //gmtime为UTC时区,和本地时区相差8小时,小括号内可以传递秒数

time.struct_time(tm_year=2018, tm_mon=3, tm_mday=20, tm_hour=8, tm_min=9, tm_sec=1, tm_wday=1, tm_yday=79, tm_isdst=0)

如果要取值的话,按照以下方法做:

>>> a = time.localtime()

>>> a.tm_year

2018

4、把元组形式的时间格式转换为时间戳格式

>>> time.mktime(a)

1521533852.0

5、格式化输出时间字符串(也可以说把元组格式的时间转换成自定义的格式)

>>> time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())

'2018-03-20 16:27:29'

格式化的参数列表:

%a    本地(locale)简化星期名称    

%A    本地完整星期名称    

%b    本地简化月份名称    

%B    本地完整月份名称    

%c    本地相应的日期和时间表示    

%d    一个月中的第几天(01 - 31)    

%H    一天中的第几个小时(24小时制,00 - 23)    

%I    第几个小时(12小时制,01 - 12)    

%j    一年中的第几天(001 - 366)    

%m    月份(01 - 12)    

%M    分钟数(00 - 59)    

%p    本地am或者pm的相应符    一    

%S    秒(01 - 61)    二    

%U    一年中的星期数。(00 - 53星期天是一个星期的开始。)第一个星期天之前的所有天数都放在第0周。    三    

%w    一个星期中的第几天(0 - 60是星期天)    三    

%W    和%U基本相同,不同的是%W以星期一为一个星期的开始。    

%x    本地相应日期    

%X    本地相应时间    

%y    去掉世纪的年份(00 - 99)    

%Y    完整的年份    

%Z    时区的名字(如果不存在为空字符)    

%%    %’字符

6、把自定义格式的时间转换成元组格式的时间格式

>>> time.strptime("2018-03-20 16:27:29","%Y-%m-%d %H:%M:%S")

time.struct_time(tm_year=2018, tm_mon=3, tm_mday=20, tm_hour=16, tm_min=27, tm_sec=29, tm_wday=1, tm_yday=79, tm_isdst=-1)

7、返回时间格式"Fri Aug 19 11:14:16 2016"

>>> time.asctime()

'Tue Mar 20 17:02:00 2018'

8、将时间戳转换为上面格式

>>> time.ctime(4231421341234)

'Tue May 28 09:00:34 136058'

datetime

1、获取当前的时间

>>> import datetime

>>> print(datetime.datetime.now())

2018-03-20 17:09:49.296190

2、获取当前时间三天后的时间

>>> print(datetime.datetime.now() + datetime.timedelta(3))

2018-03-23 17:12:23.314952

3、获取当前时间三天前的时间

>>> print(datetime.datetime.now() + datetime.timedelta(-3))

2018-03-17 17:13:16.578827

4、获取当前时间三小时后的时间

>>> print(datetime.datetime.now() + datetime.timedelta(hours=3))     //三小时前的时间用hours=-3

2018-03-20 20:13:46.088517

5、获取当前时间三十分钟以后的时间

>>> print(datetime.datetime.now() + datetime.timedelta(minutes=30))

2018-03-20 17:44:21.056548

6、时间的替换

>>> c_time  = datetime.datetime.now()         //获取当前时间

>>> print(c_time)

2018-03-20 17:16:47.671422

>>> print(c_time.replace(minute=3,hour=2))      //更改小时和分钟

2018-03-20 02:03:47.671422

原文地址:http://blog.51cto.com/12730062/2089062

时间: 2024-11-05 18:50:36

python3中time和datetime模块的相关文章

python中time、datetime模块的使用

目录 python中time.datetime模块的使用 1.前言 2.time模块 1.时间格式转换图 2.常用方法 3.datetime模块 python中time.datetime模块的使用 1.前言 如果您从事过python web的开发,那一定有过这样的经历,对于各种复杂繁琐的业务逻辑,掺杂着各种各样的时间约束,让人很容易搞的头晕眼花,比如展示出一天内用户进行过的所有操作记录,再比如进行验证码验证时获取当前时间与验证码生成时间进行比较,检查是否超过10分钟过期时间之类.这些关于时间的业

python3 中引用 HTMLTestRunner.py 模块的注意事项

HTMLTestRunner.py支持python2中运行,如果在python3.6.2中引用HTMLTestRunner.py模块,需要做一下更改: 1.更改HTMLTestRunner.py模块中的代码 1.更改StringIO模块导入方式:  2.self.outputBuffer=StringIO.StringIO()  改为self.outputBuffer= StringIO() 3.python3.6.2字典无has_key方法: 4.str没有decode方法,去掉decode转

python3中的os.path模块

os.path模块主要用于获取文件的属性,这里对该模块中一些常用的函数做些记录. os.abspath(path):获取文件的绝对路径.这里path指的是路径,例如我这里输入“data.csv” [In] os.path.abspath('data.csv') [Out] 'E:\\kaggle\\Titanic\\data.csv' os.path.basename(path):获取文件名称.该函数默认通过 ‘\’来截取字符串获取文件名,返回最后一个'\'符号后面的内容 [In] os.pat

python之模块配置文件ConfigParser(在python3中变化较大)

# -*- coding: utf-8 -*- #python 27 #xiaodeng #python之模块ConfigParser(在python3中为configparser) #特别注意:python3和python2关于该模块的功能用法有很大的不同. #配置文件解析器 import ConfigParser,os #初始化一个配置文件对象 config=ConfigParser.ConfigParser() #增加一个section config.add_section('Sectio

python中datetime模块

Python提供了多个内置模块用于操作日期时间,像calendar,time,datetime.time模块我在之前的文章已经有所介绍,它提供 的接口与C标准库time.h基本一致.相比于time模块,datetime模块的接口则更直观.更容易调用.今天就来讲讲datetime模块. datetime模块定义了两个常量:datetime.MINYEAR和datetime.MAXYEAR,分别表示datetime所能表示的最 小.最大年份.其中,MINYEAR = 1,MAXYEAR = 9999

python中的datetime模块

Python提供了多个内置模块用于操作日期时间,像calendar,time,datetime.time模块我在之前的文章已经有所介绍,它提供的接口与C标准库time.h基本一致.相比于time模块,datetime模块的接口则更直观.更容易调用.今天就来讲讲datetime模块. datetime模块定义了两个常量:datetime.MINYEAR和datetime.MAXYEAR,分别表示datetime所能表示的最小.最大年份.其中,MINYEAR = 1,MAXYEAR = 9999.(

Python3: datetime模块

datetime模块定义了以下几个类: datetime.date: 表示日期的类,常用的属性有year, month, day; datetime.time: 表示时间的类,常用的属性有hour, minute, second, microsecond; datetime.datetime: 表示日期时间的类 datetime.timedelta: 表示时间间隔,即两个时间点之间的长度 datetime.tzinfo: 与时区有关的信息 date类: date类表示一个日期(年.月.日) da

Python中time模块和datetime模块的常用操作以及几种常用时间格式间的转换

最常见以及常用的几种时间格式 1.时间戳(timestamp),时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量. 2.时间元组(struct_time),共有九个元素组. 3.格式化时间(format time ),可以格式化为固定或者自定义格式,增加可读性. #!/usr/bin/env python # -*- coding:utf-8 -*- import time #时间戳格式,默认获取当前时间 1500029143.7640195 timestamp = tim

python中 datetime模块的详解(转载)

Python提供了多个内置模块用于操作日期时间,像calendar,time,datetime.time模块我在之前的文章已经有所介绍,它提供 的接口与C标准库time.h基本一致.相比于time模块,datetime模块的接口则更直观.更容易调用.今天就来讲讲datetime模块. datetime模块定义了两个常量:datetime.MINYEAR和datetime.MAXYEAR,分别表示datetime所能表示的最 小.最大年份.其中,MINYEAR = 1,MAXYEAR = 9999