5.1.8 strftime()和strptime()的使用

strftime()函数是用来格式化一个日期、日期时间和时间的函数,支持date、datetime、time等类,把这些日期、日期时间或时间通过格式字符要求格式为字符串表示。相反strptime()函数就是从字符串表示的日期时间按格式化字符串要求转换为相应的日期时间。

对于time对象来说,格式化字符串不要使用年、月、日相关的字符,因为time对象没有相应的值。如果不幸使用了,只能默认输出为0值。

对于date对象来说,格式化字符串不要使用时、分、秒和微秒相关的字符,因为date对象没有相应的值。如果使用了,只能默认输出为0值。

由于strftime()函数是调用C语言lib库来实现的,所以在不同平台都支持,具体特定平台支持的细节,需要在平台上查看strftime文档说明。

下面列表符合C89和C99标准的格式化字符:


格式字符


意义


例子


注意事项


%a


星期几的英语缩写


Sun, Mon, ..., Sat(en_US); So, Mo, ..., Sa(de_DE)


%A


星期几的英语全称


Sunday, Monday, ..., Saturday(en_US)


%w


星期几采用数字表示,0表示星期日,6表示星期六。


0,1,...,6


%d


用0补充的两位日期数字。


01,02,...,31


%b


月份采用缩写字符表示。


Jan, Feb,..., Dec(en_US)


%B


月份采用全名称表示。


January, February, ...,December(en_US)


%m


月份采用0补充的两位数表示。


01,02,...,12


%y


年份采用0补充的两位数表示。


00,01,...,99


%Y


采用四位数表示的年份。


0001,0002,...,2013,2014,2015,...,9998,9999


%H


以0补充的24小时表示的小时。


00,01,...,23


%I


以0补充的12小时表示的小时。


00,01,...,12


%p


本地时间是上午还是下午。


AM,PM(en_US)


%M


以0补充的分钟表示。


00,01,...,59


%S


以0补充的秒表示。


00,01,...,59


%f


以0补充的微秒表示。


000000,000001,...,999999


%z


UTC偏移表示为+HHMM或-HHMM。


(empty),+0000,-0400,+1030


%Z


时区名称。


(empty),UTC,EST,CST


%j


以0补充的年的天数。


001,002,...,366


%U


一年里第几周,星期日作为一周开始。


00,01,...,53


%W


一年里第几周,星期一作为一周开始。


00,01,...,53


%c


采用本地合适日期和时间表示。


Tue Aug 16 21:30:00 1988(en_US)


%x


采用本地合适日期表示。


08/16/88(None);

08/16/1988(en_US)


%%


输出百分号%。


%

例子:

#python 3.4

import datetime

tz = datetime.timezone(datetime.timedelta(hours = 8))

dt = datetime.datetime(2015, 12, 1, tzinfo=tz)

print(tz.utc)

print(dt.strftime(‘%A %z %U‘))

结果输出如下:

UTC+00:00

Tuesday +0800 48

蔡军生  QQ:9073204 深圳

时间: 2024-10-11 22:09:00

5.1.8 strftime()和strptime()的使用的相关文章

日期strftime、strptime

#time strftime(format,tuple)接收时间元组,返回表示时间的字符串.str-format-time, 时间字符串格式化,即我们看到的格式. #time strptime(string,format)把时间字符串,解析成一个时间元组. str-parse-time,时间字符串语法化,即计算机理解的格式. 示例: import time t = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())) pr

python 学习笔记 14 -- 常用的时间模块之datetime

书接上文,前面我们讲到<常用的时间模块之time>,这次我们学习datetime -- 日期和时间值管理模块 使用apihelper 查看datetime 模块,我们可以看到简单的几项: date       ---  日期对象,结构为date(year, month, day) time       ---  时间值对象,结构为 time([hour[, minute[, second[, microsecond[, tzinfo]]]]]).时间对象所有的参数都是可选的.tzinfo 可以

Python中处理时间格式

使用time 对象的 strftime() 或者 strptime()方法. Directive Meaning Example Notes %a Weekday as locale's abbreviated name. Sun, Mon, ..., Sat (en_US); So, Mo, ..., Sa (de_DE) (1) %A Weekday as locale's full name. Sunday, Monday, ..., Saturday (en_US); Sonntag,

10.时间编程

1.时间的类型: Coordinated Universal Time(UTC):世界标准时间,也就是大家所熟知的格林威治标准时间(Greenwich Mean Time,GMT). Calendar Time:日历时间,是用"从一个标准时间点(如:1970年1月1日0点)到此时经过的秒数"来表示的时间. ? 2.时间操作: 获取日历时间:man 2 time: (主要:man 后面的数字表示的是章节:1(留空):命令 2:函数 3:系统调用.) NAME time - get tim

python标准库-datetime学习

参考博客:http://www.cnblogs.com/lhj588/archive/2012/04/23/2466653.htmlhttp://www.cnblogs.com/fclbky/articles/4098204.html参考资料:Python 2.7.7 documentation参考工具:http://translate.google.cn/ Available Types:class datetime.date      理想化日期class datetime.time    

Python 中的 time 模块

从time 模块的帮助文档中,发现相关的函数主要有如下:     time() -- return current time in seconds since the Epoch as a float     clock() -- return CPU time since process start as a float     sleep() -- delay for a number of seconds given as a float     gmtime() -- convert s

python常用模块上篇

python常见模块 分两篇分别介绍下述模块 time模块 random模块 hashlib模块 os模块 sys模块 logging模块 序列号模块 configparser模块 re模块 time模块 在python中,通常有这三种方式来表示时间:时间戳.元组(struct_time).格式化的时间字符串: 1)时间戳:通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运行"type(time.time())",返回的是float类型. (2)格

常用的模块

1,时间模块(time) 一,时间戳: import timeprint(time.time()) #-----返回当前时间的时间戳 >>>1493192202.9384248时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量 二,时间字符串: print(time.strftime("%Y:%m:%d:%X")) >>>2017:04:26:15:46:33输出的是格式化的时间字符串 三,时间元祖: print(time.loc

python篇1.13---模块

一.time 1.时间表示形式 在Python中,通常有这三种方式来表示时间:时间戳.元组(struct_time).格式化的时间字符串:(1)时间戳(timestamp) :通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运行"type(time.time())",返回的是float类型. (2)格式化的时间字符串(Format String): '1988-03-16' (3)元组(struct_time) :struct_time元组共有9个