#!/usr/bin/env python
# -*- coding: UTF-8 -*-
'''=================================================
@Project -> File :time_test
@IDE :PyCharm
@Author :zhangjun.xue.o
@Date :2019-09-10 17:23
@Desc :python time and datetime 模块,时间类型之间的转换关系总结
=================================================='''
import time
import datetime
start_time = '2019-08-1'
end_time = '2019-08-21'
def main(start_time, end_time):
res = cmp(start_time, end_time)
return res
def get_time_tuple():
"""
获取time时间元组:<type 'time.struct_time'>
:return:
"""
return time.localtime()
def get_datetime_tuple():
"""
获取datetime时间 <type 'datetime.datetime'>
:return:
"""
return datetime.datetime.now()
def datetime_to_str(date_time):
"""
<type 'datetime.datetime'> TO <type 'str'>
:param date_time:
:return:
"""
return date_time.strftime("%Y-%m-%d %H:%M:%S")
def timestr_to_datetime(time_str, time_str_param):
"""
<type 'str'> TO <type 'datetime.datetime'>
:param time_str:
:param time_str_param:
:return:
"""
return datetime.datetime.strptime(time_str, time_str_param)
def timestr_to_timetuple(time_str, time_str_param):
"""
<type 'str'> TO <type 'time.struct_time'>
:param time_str:
:param time_str_param:
:return:
"""
return time.strptime(time_str, time_str_param)
def timetuple_to_timespan(time_tuple):
"""
时间元组 -- > 时间戳
<type 'time.struct_time'> TO <type 'float'>
:param time_tuple:
:return:
"""
return time.mktime(time_tuple)
if __name__ == "__main__":
# res = main(end_time, start_time)
# print '-- res = ', res
pass
time_str = '2019-09-01 10:10:10'
print '-- time_str = ', time_str, type(time_str)
print'\n'
""" time """
# 时间字符串 -> 时间元组
time_tuple = timestr_to_timetuple(time_str, "%Y-%m-%d %H:%M:%S")
print '-- time_time = ', time_tuple, type(time_tuple)
print'\n'
# 时间元组 - 时间戳
time_temp = timetuple_to_timespan(time_tuple)
print '-- time_temp = ', time_temp, type(time_temp)
print'\n'
# 时间元组 - 时间字符串
time_now = get_time_tuple() # 时间元组
print '-- time_now = ', time_now, type(time_now)
print'\n'
time_string = time.strftime("%Y-%m-%d", time_now)
print '-- time_string = ', time_string, type(time_string) # 时间字符串
print'\n'
""" datetime """
# 时间字符串 - datetime类型时间
time_datetime = timestr_to_datetime(time_str, "%Y-%m-%d %H:%M:%S")
print '-- time_datetime = ', time_datetime, type(time_datetime)
print'\n'
# datetime类型 - 时间字符串
now = get_datetime_tuple()
print '-- now = ', now, type(now)
print'\n'
datetime_str = datetime_to_str(now)
print '-- datetime_str = ', datetime_str, type(datetime_str)
print'\n'
输出:
-- time_str = 2019-09-01 10:10:10 <type 'str'>
-- time_time = time.struct_time(tm_year=2019, tm_mon=9, tm_mday=1, tm_hour=10, tm_min=10, tm_sec=10, tm_wday=6, tm_yday=244, tm_isdst=-1) <type 'time.struct_time'>
-- time_temp = 1567303810.0 <type 'float'>
-- time_now = time.struct_time(tm_year=2019, tm_mon=9, tm_mday=11, tm_hour=16, tm_min=11, tm_sec=10, tm_wday=2, tm_yday=254, tm_isdst=0) <type 'time.struct_time'>
-- time_string = 2019-09-11 <type 'str'>
-- time_datetime = 2019-09-01 10:10:10 <type 'datetime.datetime'>
-- now = 2019-09-11 16:11:10.616181 <type 'datetime.datetime'>
-- datetime_str = 2019-09-11 16:11:10 <type 'str'>

本文详细介绍了Python中time和datetime模块的使用方法,包括时间类型之间的转换,如字符串到时间元组,时间元组到时间戳,以及datetime类型到字符串的转换。通过实例演示了如何处理日期和时间数据。
1783

被折叠的 条评论
为什么被折叠?



