python常用库-datetime

python常用库-datetime

第一章 时间库 datetime

文章目录

  • python常用库-datetime
  • 前言
  • 1.基本用法
    • 2.介绍一些网络获取时间的接口
    • 3.国外时间的格式化
  • 总结


前言

datetime库的基本用法,时间相互转化。


提示:以下是本篇文章正文内容,下面案例可供参考

1.基本用法

代码如下(示例):

import datetime, time

d_time = datetime.datetime.now()
print('获取本地时间', d_time, type(d_time))
# 获取本地时间 2020-11-03 10:19:55.726679 

d_time = datetime.datetime.now().date()
print('获取今天日期', d_time, type(d_time))
# 获取今天日期 2020-11-03 

d_time = datetime.datetime.now().time()
print('获取当前时间', d_time, type(d_time))
# 获取当前时间 10:22:15.839177 
################时间转化##########################
d_time = d_time.strftime('%Y-%m-%d %H:%M:%S')
print('datetime=>字符串', d_time, type(d_time))
# 格式化时间 2020-11-03 10:19:55 

# datetime类型转时间戳
print('datetime=>时间戳', time.mktime(datetime.datetime.now().timetuple()))
# datetime=>时间戳 1604373055.0
# ----------------
d_time = datetime.datetime.strptime(d_time, '%Y-%m-%d %H:%M:%S')
print('字符串=>datetime', d_time, type(d_time))
# 字符串时间到 datetime 2020-11-03 10:33:43 


a = datetime.datetime.strptime('2018-12-10 19:11:52', '%Y-%m-%d %H:%M:%S')
a = time.mktime(a.timetuple())
print('字符串=>时间戳', a)
# 字符串=>时间戳 1544440312.0

# ---------------
unix_ts = 1564635585
d_time = datetime.datetime.fromtimestamp(unix_ts)
print('时间戳=>datetime', d_time)
# 时间戳=>datetime 2019-08-01 12:59:45

print('时间戳=>字符串', d_time.strftime('%Y-%m-%d %H:%M:%S'))  # 这里衔接上面代码哦
# 时间戳=>字符串 2019-08-01 12:59:45


###############计算时间差#############
d1 = datetime.datetime.strptime('2020-10-10 19:11:52', '%Y-%m-%d %H:%M:%S')
d2 = datetime.datetime.now()
print('时间计算-相差天数', (d2 - d1).days)  # 相差天数
print('时间计算-相差秒数', (d2 - d1).seconds)  # 相差秒数)
###############增减时间###############
now = datetime.datetime.now()
print('当前时间', now)
add_time = datetime.timedelta(weeks=1)  # days seconds minutes hours weeks
print('加一个星期', now + add_time)  # 减的话就用-1

2.介绍一些网络获取时间的接口

苏宁:
http://quan.suning.com/getSysTime.do

淘宝:
http://api.m.taobao.com/rest/api3.do?api=mtop.common.getTimestamp


3.国外时间的格式化

import time
import datetime
time='Friday, November 18, 2016'
time_format=datetime.datetime.strptime(time,'%A, %B %d, %Y')  #datetime.datetime(2016, 11, 18, 0, 0)
datetime.datetime.strftime(time_format, '%Y-%m-%d %H:%M:%S')   #'2016-11-18 00:00:00'
datetime.datetime.utcnow()
datetime.datetime.utcnow() + datetime.timedelta(days=7)
(datetime.datetime.utcnow() + datetime.timedelta(days=7)).isoformat()
datetime.datetime.utcnow().isoformat()
 a = 1567818003
from datetime import datetime
#转化utc时间
datetime.utcfromtimestamp(a)    ##### datetime.datetime(2019, 9, 7, 1, 0, 3)
datetime.utcfromtimestamp(a).isoformat()

总结

%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 当前时区的名称  # 乱码

%% %号本身

%a 英文星期简写

%A 英文星期的完全

%b 英文月份的简写

%B 英文月份的完全

%c 显示本地日期时间

%d 日期,取1-31

%H 小时, 0-23

%I 小时, 0-12

%m 月, 01 -12

%M 分钟,1-59

%j 年中当天的天数

%w 显示今天是星期几

%W 第几周

%x 当天日期

%X 本地的当天时间

%y 年份 00-99间

%Y 年份的完整拼写

你可能感兴趣的:(python基础,python,timestamp)