Python3基础知识之日期时间与字符的转换

时间:2023-03-09 16:37:45
Python3基础知识之日期时间与字符的转换

问题:“猿类”们都知道,编程中都会涉及到日期、时间类型与字符串类型的转换。不同场景,需要将字符串格式转换为日期类型;也需要将日期类型转换为字符串格式。

目标: 学习和积累python中time和datetime

相关知识:

一、time  引用包time

import time

1、获取CTS格式: 星期 月 日 时分秒 年

time.ctime()
    结果:Wed May 16 15:12:57 2018

2、字符转换为tuple(time obj)

date_string = "2016-11-30 13:53:59"
    print(time.strptime(date_string, "%Y-%m-%d %H:%M:%S"))

结果:time.struct_time(tm_year=2016, tm_mon=11, tm_mday=30,
tm_hour=13, tm_min=53, tm_sec=59, tm_wday=2, tm_yday=335, tm_isdst=-1)

3、获取时间戳格式:自1970年1月1日(00:00:00 GMT)以来的秒数

time.time()

结果:1526455106.7462714

4、time转换为字符

time_tuple = (2016, 11, 30, 13, 51, 18, 2,
317, 0)
    time.strftime("%Y-%m-%d %H:%M:%S", time_tuple)

结果:2016-11-30 13:51:18

5、time转换为时间戳
    time_tuple = (2016, 11, 30, 13, 51, 18, 2, 317, 0)
    time.mktime(time_tuple)

6、时间戳转换为时间time

timestamp = 1480486369.75

time.localtime(timestamp)

二、datetime 引用包datetime

import datetime

 1、datetime.now() 获取当前系统时间

datetime.datetime.now()

结果:2018-05-16 15:33:45.748534

2、字符转换为time

date_string = "2016-11-30 13:53:59"

datetime.datetime.strptime(date_string, "%Y-%m-%d
%H:%M:%S")

结果:datetime.datetime(2016,
11, 30, 13, 53, 59)

3、datetime转换字符

dt_obj = datetime.datetime(2016, 11, 30, 13, 53,
59)

dt_obj.strftime("%Y-%m-%d %H:%M:%S")

结果:2016-11-30
13:53:59

 4、datetime转换为tuple(time obj)

 dt_obj = datetime.datetime(2016, 11, 30, 13, 53, 59)

 dt_obj.timetuple()

 结果:time.struct_time(tm_year=2016, tm_mon=11, tm_mday=30, tm_hour=13,
tm_min=53, tm_sec=59, tm_wday=2, tm_yday=335, tm_isdst=-1)

 5、时间戳转换datetime对象

timestamp = 1480486369.75

 datetime.datetime.fromtimestamp(timestamp)

结果:datetime.datetime(2016,
11, 30, 14, 12, 49, 750000)

参考地址:http://www.runoob.com/python/python-date-time.html