【Python基础】第十五课:处理时间格式资料

datetime

Posted by x-jeff on August 19, 2020

本文为原创文章,未经本人允许,禁止转载。转载请注明出处。

1.处理时间格式资料

👉获取现在的时间:

1
2
from datetime import datetime
current_time = datetime.now()#输出为:2020-08-19 22:09:47.804580

通过type(current_time)查看current_time的格式为:<class 'datetime.datetime'>,并不是字符串或者数字格式。

👉将时间转换成字符串:

1
current_time.strftime('%Y-%m-%d')#输出为:2020-08-19

👉将字符串转换成时间:

1
datetime.strptime('2020-08-19', '%Y-%m-%d')#输出为:2020-08-19 00:00:00

🚩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:本地简化星期名称,例如:Wed
  • %A:本地完整星期名称,例如:Wednesday
  • %b:本地简化的月份名称,例如:Aug
  • %B:本地完整的月份名称,例如:August
  • %c:本地相应的日期表示和时间表示,例如:Wed Aug 19 22:25:13 2020
  • %j:年内的一天(001-366)。
  • %p:本地A.M.或P.M.的等价符,例如:PM
  • %U:一年中的星期数(00-53)星期天为星期的开始。
  • %w:星期(0-6),星期天为星期的开始。
  • %W:一年中的星期数(00-53)星期一为星期的开始。
  • %x:本地相应的日期表示,例如:08/19/20
  • %X:本地相应的时间表示,例如:22:28:10
  • %Z:当前时区的名称。
  • %%:%号本身。

2.时间回溯

👉时间往前回溯一天:

1
2
from datetime import timedelta
current_time - timedelta(days=1)#输出为:2020-08-18 22:43:58.022801

👉时间往后推移十天:

1
2
from datetime import timedelta
current_time - timedelta(days=-10)#输出为:2020-08-29 22:48:33.314726

也可写为:

1
current_time + timedelta(days=10)

datetime.timedelta中的参数可以是:dayssecondsmicrosecondsmillisecondsminuteshoursweeks

3.转换UNIX时间

UNIX时间(或称POSIX时间)是UNIX或类UNIX系统使用的时间表示方式:从UTC1970年1月1日0时0分0秒起至现在的总秒数,不考虑闰秒。

👉将datetime转换为UNIX timestamp:

1
2
from time import mktime
mktime(current_time.timetuple())#输出为:1597849302.0

其中current_time.timetuple()的输出格式为:

1
time.struct_time(tm_year=2020, tm_mon=8, tm_mday=19, tm_hour=23, tm_min=4, tm_sec=27, tm_wday=2, tm_yday=232, tm_isdst=-1)

👉将UNIX timestamp转换为datetime:

1
datetime.fromtimestamp(1597849076)#输出为:2020-08-19 22:57:56

4.在pandas转换时间

我们以上一课:【Python基础】第十四课:资料转换中使用的csv文件为例,将“日期”一栏的格式改为datetime:

1
2
3
import pandas as pd
df = pd.read_csv("../Demo14/house_price.csv")
df["日期"] = pd.to_datetime(df["日期"], format="%Y年%m月%d日")

csv文件地址:链接

5.代码地址

  1. 处理时间格式资料

6.参考资料

  1. Python time strftime()方法(菜鸟教程)
  2. UNIX时间(WIKI)