python的time操作

本文介绍如何使用Python的time模块获取当前时间,并通过strftime方法将其格式化为易读的日期格式。

转自:http://www.cnblogs.com/wanpython/archive/2010/08/07/1794598.html


取得时间相关的信息的话,要用到python time模块,python time模块里面有很多非常好用的功能,你可以去官方

文档了解下,要取的当前时间的话,要取得当前时间的时间戳,时间戳好像是1970年到现在时间相隔的时间。

你可以试下下面的方式来取得当前时间的时间戳:
import time
print time.time()
输出的结果是:
1279578704.6725271

但是这样是一连串的数字不是我们想要的结果,我们可以利用time模块的格式化时间的方法来处理:
time.localtime(time.time())
用time.localtime()方法,作用是格式化时间戳为本地的时间。
输出的结果是:
time.struct_time(tm_year=2010, tm_mon=7, tm_mday=19, tm_hour=22, tm_min=33, tm_sec=39, tm_wday=0, tm_yday=200, tm_isdst=0)

现在看起来更有希望格式成我们想要的时间了。
time.strftime('%Y-%m-%d',time.localtime(time.time()))

最后用time.strftime()方法,把刚才的一大串信息格式化成我们想要的东西,现在的结果是:
2010-07-19

time.strftime里面有很多参数,可以让你能够更随意的输出自己想要的东西:
下面是time.strftime的参数:
strftime(format[, tuple]) -> string
将指定的struct_time(默认为当前时间),根据指定的格式化字符串输出
python中时间日期格式化符号:
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12) 
%M 分钟数(00=59)
%S 秒(00-59)

%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天(001-366)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数(00-53)星期天为星期的开始
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称
%% %号本身 
Python 中的时间处理主要依赖于 `time` 模块,它提供了多种功能用于获取、格式化和操作时间。以下是关于 `time` 模块的详细使用说明。 ### 获取当前时间 可以使用 `time.time()` 函数获取当前时间戳(自 Unix 纪元以来的秒数): ```python import time timestamp = time.time() print(f"Current timestamp: {timestamp}") ``` ### 格式化时间 通过 `time.localtime()` 或 `time.gmtime()` 可以将时间戳转换为本地时间或 UTC 时间的对象,然后使用 `time.strftime()` 对时间进行格式化输出: ```python local_time = time.localtime(timestamp) formatted_time = time.strftime("%Y-%m-%d %H:%M:%S", local_time) print(f"Formatted local time: {formatted_time}") ``` ### 解析时间字符串 如果有一个时间字符串,并希望将其解析为时间对象,可以使用 `time.strptime()` 方法: ```python parsed_time = time.strptime("2023-10-01 12:30:45", "%Y-%m-%d %H:%M:%S") print(f"Parsed time object: {parsed_time}") ``` ### 时间对象的操作 `time.struct_time` 对象包含多个属性如 `tm_year`, `tm_mon`, `tm_mday` 等等,可以通过这些属性访问具体的时间值。此外,还可以通过 `calendar` 模块计算两个日期之间的天数差异等复杂操作。 ### 延迟执行 在脚本中实现延迟执行的功能,可以利用 `time.sleep()` 函数暂停程序运行指定的秒数: ```python print("Sleeping for 5 seconds...") time.sleep(5) print("Awake now.") ``` ### 高精度计时 对于需要更高精度的计时需求,虽然 `time.time()` 在大多数平台上已经足够精确,但在某些情况下可能需要使用 `time.perf_counter()` 来获得更准确的性能计数器值: ```python start = time.perf_counter() # some code here end = time.perf_counter() print(f"Execution time: {(end - start):.6f} seconds") ``` 以上是 `time` 模块的一些基本用法,涵盖了从获取时间到格式化以及简单的时间操作[^1]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值