Python datetime模块使用

Python的time 模块功能有限,计算日期的加减的时还是用datetime比较方便

首先 import datetime
当然也可以
from datetime import datetime
from datetime import timedelta
的方式引入

以下代码均是在linux python 命令行输入显示:
一、string转datetime

str = ‘2012-11-19’

date_time = datetime.datetime.strptime(str,’%Y-%m-%d’)

date_time

datetime.datetime(2012,11,19,0,0)

二、datetime转string

date_time.strftime(‘%Y-%m-%d’)

‘2012-11-19’

三、时间的加减
1 . 计算date_time的后一天

date_time + datetime.timedelta(days=1)
datetime.datetime(2012, 11, 20, 0, 0)

2 . 计算date_time的前一天

date_time + datetime.timedelta(days=-1)
datetime.datetime(2012, 11, 18, 0, 0)

3 .计算date_time 的前一个小时

date_time + datetime.timedelta(hours=1)
datetime.datetime(2012, 11, 19, 1, 0)

本来以为timedelta 还可以直接计算 months和 years的,却发现报错:

>>> date_time + datetime.timedelta(months=1)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'months' is an invalid keyword argument for this function

https://docs.python.org/2/library/datetime.html 看了下:
发现只支持:
days
seconds
microseconds
milliseconds
minutes
hours
weeks

class datetime.timedelta([days[, seconds[, microseconds[,
[, minutes[, hours[, weeks]]]]]]]) All arguments are
optional and default to 0. Arguments may be ints, longs, or floats,
and may be positive or negative.

Only days, seconds and microseconds are stored internally. Arguments
are converted to those units:

A millisecond is converted to 1000 microseconds. A minute is converted
to 60 seconds. An hour is converted to 3600 seconds. A week is
converted to 7 days.

https://docs.python.org/2/library/datetime.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python datetime模块是用于处理日期和时间的模块。它提供了各种类和函数来处理日期、时间、时间间隔、时区等。 datetime模块中最常用的类是datetime类,它表示一个日期和时间的对象。datetime类的构造函数可以接受年、月、日、时、分、秒和微秒等参数,也可以从字符串中解析出日期和时间。 下面是一些常用的datetime类的方法: - datetime.today():返回表示当前日期和时间的datetime对象。 - datetime.now():返回表示当前日期和时间的datetime对象,可选参数tz指定时区。 - datetime.strptime(date_string, format):将字符串解析为datetime对象,format指定字符串的格式。 - datetime.strftime(format):将datetime对象格式化为字符串,format指定输出的格式。 - datetime.date():返回datetime对象的日期部分,即date对象。 - datetime.time():返回datetime对象的时间部分,即time对象。 - datetime.replace(year, month, day, hour, minute, second, microsecond):返回一个新的datetime对象,替换指定的年、月、日、时、分、秒和微秒。 - datetime.timedelta(days, seconds, microseconds, milliseconds, minutes, hours, weeks):表示一个时间间隔,可以用来进行日期的加减。 除了datetime类,还有date、time和timedelta等类,它们分别表示日期、时间和时间间隔。例如,date类的构造函数可以接受年、月、日等参数,可以从datetime对象中获取日期部分,还提供了strftime和timedelta等方法。time类和datetime类类似,但只表示时间部分。timedelta类表示时间间隔,可以进行加减运算。 datetime模块还提供了timezone类,用于表示时区信息。可以通过pytz模块获取时区信息,然后使用timezone类创建时区对象。datetime对象可以使用astimezone方法转换时区。 下面是一些常用的timezone类的方法: - timezone.utc:表示UTC时区。 - timezone(timedelta, name=None):表示偏移量为timedelta的时区,可选参数name指定时区的名称。 - pytz.timezone(name):获取名称为name的时区对象。 - tzinfo.utcoffset(dt):返回datetime对象dt在该时区下的UTC偏移量。 - tzinfo.dst(dt):返回datetime对象dt在该时区下的夏令时偏移量。 总之,datetime模块提供了丰富的功能和灵活的接口,可以方便地处理日期和时间相关的任务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值