python timedelta 求时间差省去繁琐格式转换

简介: python timedelta 求时间差省去繁琐格式转换

python timedelta 求时间差省去繁琐格式转换


目录

一、需求

二、实现

三、补充

一、需求

需要实现一个小功能,求两个时间差,如果大于某个值,就做下一步操作,否则等待。

二、实现

可以使用 datetime.timedelta

1) 将时间转化为字符串形式

可以看出直接将两个字符串格式的时间做差报错。

2)不转换为字符串

可以看出结果是 timedelta()

可以这样写在程序中不好取值呀,因此可以使用函数 total_seconds(),函数返回值为 float 类型。

以上,问题解决~

三、补充

datetime.timedelta 除了 total_seconds() 还有哪些参数呢,可以在终端使用 help 来查看:

help(datetime.timedelta)
Help on class timedelta in module datetime:
class timedelta(builtins.object)
 |  Difference between two datetime values.
 |
 |  timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)
 |
 |  All arguments are optional and default to 0.
 |  Arguments may be integers or floats, and may be positive or negative.
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __bool__(self, /)
 |      self != 0
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
:...skipping...
Help on class timedelta in module datetime:
class timedelta(builtins.object)
 |  Difference between two datetime values.
 |
 |  timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)
 |
 |  All arguments are optional and default to 0.
 |  Arguments may be integers or floats, and may be positive or negative.
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __bool__(self, /)
 |      self != 0
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
:...skipping...
Help on class timedelta in module datetime:
class timedelta(builtins.object)
 |  Difference between two datetime values.
 |
 |  timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)
 |
 |  All arguments are optional and default to 0.
 |  Arguments may be integers or floats, and may be positive or negative.
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __bool__(self, /)
 |      self != 0
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __reduce__(...)
 |      __reduce__() -> (cls, state)
 |
 |  __repr__(self, /)
 |      Return repr(self).
Help on class timedelta in module datetime:
class timedelta(builtins.object)
 |  Difference between two datetime values.
 |
 |  timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, ho
urs=0, weeks=0)
 |
 |  All arguments are optional and default to 0.
 |  Arguments may be integers or floats, and may be positive or negative.
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __bool__(self, /)
 |      self != 0
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __reduce__(...)
 |      __reduce__() -> (cls, state)
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __str__(self, /)
 |      Return str(self).
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  total_seconds(...)
 |      Total seconds in the duration.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs) from builtins.type
 |      Create and return a new object.  See help(type) for accurate signature
.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  days
 |      Number of days.
 |
 |  microseconds
 |      Number of microseconds (>= 0 and less than 1 second).
 |
 |  seconds
 |      Number of seconds (>= 0 and less than 1 day).
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |
 |  max = datetime.timedelta(days=999999999, seconds=86399, microseconds=9...
 |
 |  min = datetime.timedelta(days=-999999999)
 |
 |  resolution = datetime.timedelta(microseconds=1)
(END)
————————————————
相关文章
python中的时间处理模块(二):datetime模块之timedelta类详解
python中的时间处理模块(二):datetime模块之timedelta类详解
python中的时间处理模块(二):datetime模块之timedelta类详解
|
2月前
|
机器学习/深度学习 文字识别 自然语言处理
Python图片格式转换与文字识别:技术与实践
Python图片格式转换与文字识别:技术与实践
96 0
|
2月前
|
机器学习/深度学习 XML SQL
在Python中,数据加载与格式转换
在Python中,数据加载与格式转换
37 1
|
Python
python时间和日期操作(datetime和monthrange,timedelta)
python时间和日期操作(datetime和monthrange,timedelta)
153 0
|
Python
Python编程:将markdown格式转换为rst格式
Python编程:将markdown格式转换为rst格式
146 0
|
Python
Python编程:将markdown格式转换为rst格式
Python编程:将markdown格式转换为rst格式
306 0
|
Python
python实现IP进制格式转换
版权声明:转载请注明出处:http://blog.csdn.net/dajitui2024 https://blog.csdn.net/dajitui2024/article/details/79396536 ...
1034 0
|
Python
使用python将ppm格式转换成jpg【转】
转自:http://blog.csdn.net/hitbeauty/article/details/48465017 最近有个很火的文章,叫 有没有一段代码,让你觉得人类的智慧也可以璀璨无比? 自己试了一下里面的代码,可是图片格式让我犯难了。
1625 0

相关实验场景

更多