导入必须用到的一个module
>>> import time
设置一个时间的格式,下面会用到
>>>ISOTIMEFORMAT=’%Y-%m-%d %X’
看一下当前的时间,和其他很多语言相似这是从epoch(1970 年 1 月 1 日 00:00:00)开始到当前的秒数。
>>> time.time()
1180759620.859
上面的看不懂,换个格式来看看
>>> time.localtime()
(2007, 6, 2, 12, 47, 7, 5, 153, 0)
localtime返回tuple格式的时间,有一个和它类似的函数叫gmtime(),2个函数的差别是时区,gmtime()返回的是0时区的值,localtime返回的是当前时区的值。
>>> time.strftime( ISOTIMEFORMAT, time.localtime() )
‘2007-06-02 12:54:29′
用上我们的时间格式定义了,使用strftime对时间做一个转换,如果取现在的时间,time.localtime() 可以不用。
>>> time.strftime( ISOTIMEFORMAT, time.localtime( time.time() ) )
‘2007-06-02 12:54:31′
>>> time.strftime( ISOTIMEFORMAT, time.gmtime( time.time() ) )
‘2007-06-02 04:55:02′
上面展示了gmtime和localtime的区别。
查看时区用
>>> time.timezone
-28800
上面的值是一个秒值,是当前时区和0时区相差的描述,-28800=-8*3600,即为东八区。
Python日期/时间操作方法使用
0. 模块:
import os, sys
import time, datetime
1. 得到当前时间
(1) Based on time module:
import os, sys, time, datetime
startTime = time.localtime()
注意这里: startTime
(2) Based on datetime module:
import os, sys, time, datetime
nowTime = datetime.datetime.now()
type(nowTime)
2. 日期转字符串:
(1) str(xx)
(2) time提供的函数:
time.strftime([format], time)
strStartTime = time.strftime(‘%Y-%m-%d %H:%M:%S’, startTime)
‘2009-06-03 13:44:51′
3. 字符串转日期:
(1) 字符串转time:
d = time.strptime(strStartTime, ‘%Y-%m-%d %H:%M:%S’)
(2009, 6, 3, 13, 44, 51, 2, 154, -1)
type(d)
(2) 字符串转datetime
datetime的好处是可以实现方便的时间运算,比如 endTime – starTime,这在时间duration计算时非常方便.
# Convert string start time and end time to datetime.datetime
startTime = datetime.datetime(tmpStartTime[0], tmpStartTime[1], tmpStartTime[2], tmpStartTime[3], tmpStartTime[4], tmpStartTime[5] );
基于上面的转换.
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 当前时区的名称
%% %号本身
例: time.strftime(’%Y%m%d%H%M%S’)
打印:20090805092348
几个简单的函数
def ISOString2Time(s):
'''
convert a ISO format time to second
from:2006-04-12 16:46:40 to:23123123
把一个时间转化为秒
'''
return time.strptime(s, ISOTIMEFORMAT)
def Time2ISOString(s):
'''
convert second to a ISO format time
from: 23123123 to: 2006-04-12 16:46:40
把给定的秒转化为定义的格式
'''
return time.strftime(ISOTIMEFORMAT, time.localtime(float(s)))
def dateplustime(d, t):
'''
d=2006-04-12 16:46:40
t=2小时
return 2006-04-12 18:46:40
计算一个日期相差多少秒的日期,time2sec是另外一个函数,可以处理,3天,13分钟,10小时等字符串,回头再来写这个,需要结合正则表达式。
'''
return Time2ISOString(time.mktime(ISOString2Time(d))+time2sec(t))
def dateMinDate(d1, d2):
'''
minus to iso format date,return seconds
计算2个时间相差多少秒
'''
d1=ISOString2Time(d1)
d2=ISOString2Time(d2)
return time.mktime(d1)-time.mktime(d2)
分享到:
相关推荐
在编写代码时,需要注意字符串日期格式化、日期对象的增减以及跨年月的进位处理等问题。此外,通过实际编写和运行这些函数,可以帮助我们更好地理解和掌握Python在时间日期处理方面的强大功能。
对于日期,可以使用Pandas的to_datetime函数将其转换为日期时间类型,便于后续的日期运算。 接着,我们将计算每月的消费总额,这是环比分析的基础。Pandas提供了groupby函数,可以根据日期(月份)对数据进行分组,...
- 字符串解析:通过`strptime()`函数将字符串转换为日期对象,`strftime()`函数则用于格式化日期。 2. **JavaScript中的日期** - `Date`对象:JavaScript中,日期和时间是通过`Date`对象表示的。可以使用构造函数...
在本项目中,我们主要探讨如何使用Python进行日常消费数据的环比分析,以掌握月度支出的增减情况。这是一项适用于毕业设计或计算机大作业的任务,旨在提升数据分析能力,特别是利用编程技能解决实际问题的能力。下面...
`time` 和 `datetime` 模块的结合使用,可以方便地进行各种时间相关的计算和格式化,如日期比较、时间间隔计算、日期格式转换等。在实际编程中,这两个模块是处理时间问题不可或缺的部分。例如,你可以用它们来记录...
学生将学习如何利用datetime库处理日期和时间,并通过递归函数绘制七段数码管和科赫曲线,理解函数递归的应用。 组合数据类型部分,主要介绍列表和字典的使用,学生将学习如何管理信息、构建数据结构,处理复杂数据...
6. Unicode字符串和格式化字符串:展示了Python中处理Unicode字符串的方式,包括定义多行字符串,并利用格式化字符串(f-string)进行变量替换。 7. Python的特殊语法:文档提到一些Python的特殊语法元素,例如在...
使用`pandas`库中的`astype()`函数将整型转换为字符串,然后通过`pd.to_datetime()`将字符串转换为日期时间类型。 2. **时间序列的重要性**: - 时间序列数据允许我们按时间顺序对数据进行聚合,便于观察数据随...
总结起来,这个项目涉及了Python编程、数据分析基础、Pandas库的运用、数据预处理、时间序列分析、计算环比增长率以及数据可视化等多个知识点。通过学习和实践这些技术,我们可以更有效地管理和控制个人财务,从而...
Python可视化银行管理系统是一款基于Tkinter库开发的桌面应用程序,它为用户提供了一系列银行操作的功能,如开户、查询余额、取款、存款、转账以及销户和修改密码等。Tkinter是Python的标准GUI(图形用户界面)库,...
由于`time.strptime()`函数可以将字符串格式化为`struct_time`对象,我们可以先用它来格式化日期,然后再传入`mktime()`: ```python yesterday_start_time = int(time.mktime(time.strptime(str(yesterday), '%Y-%...
在Python中,有`datetime`模块提供了一系列类和函数,如`datetime`, `timedelta`等,可以方便地进行时间的运算和格式化输出。对于复杂的时区处理,可以使用`pytz`库。 5. 视频转换类:视频转换涉及到多媒体处理,...
`strftime`格式化字符串中,`%`符号用于指示特定的格式,例如 `%Y` 表示四位数的年份, `%m` 表示两位数的月份,等等。 总之,理解Python中时间处理的基本概念和方法,能够帮助你在实际开发中更加高效地处理时间...
Python的pandas库提供了强大的时间序列操作功能,如resample()方法用于按时间间隔重新采样数据,shift()函数则用于创建滞后变量,以比较当前期与前期的数据差异。 3. 同期比较:通过计算同期数据的百分比变化或绝对...
格式化时间_文本转datetime时间时间_datetime时间转文本时间_增减datetime时间_取上月最后一天时间_取时间间隔时间_时间转时间戳时间_时间戳转时间时间_取现行时间戳队列_创建队列队列_加入成员队列_取出成员队列_取...
5. **和弦生成**:ctools 可能包含专门的函数或类来生成和弦,根据音乐理论中的音程关系,组合出各种和弦类型,如大调、小调、增减和弦等。 6. **音乐理论集成**:ctools 可能会有一套与音乐理论相关的接口,比如调...
- **VFP 中日期型表达式的处理**:在Visual FoxPro中,若要获取日期型的结果,可以使用`DATE()`函数获取当前日期,然后通过加减数值来实现日期的增减。例如,`DATE()+120`表示获取当前日期之后第120天的日期。
2. **locale**: 这个对象用于设置插件的本地化选项,包括日期格式、按钮文本以及星期和月份的名称。比如,你可以自定义日期的显示格式,将其设置为`'YYYY/MM/DD HH:mm:ss'`,这样时间会显示到秒。同时,可以更改应用...
3. **HList** - 类似于 Tree,但更加灵活,可用于实现列表或表格布局,支持多列和自定义数据格式化。 4. **Scale** - 扩展了 Tk 的滑块控件,提供垂直和水平滑动条,可用于调节数值。 5. **SpinBox** - 一种数字...
Python库通常包含了一系列函数、类或模块,为开发者提供特定的功能集,以提高代码的复用性和开发效率。 在解压后的文件名称列表中,我们只看到了`routeros-diff-0.5.1`,这可能是解压后的文件夹名,里面可能包含了...