为什么timedeltas不能被分割? [英] Why can't timedeltas be divided?
问题描述
如果我尝试写下这样的话:
num_weeks = time_diff / datetime.timedelta(days = 7)
我得到:
TypeError:/:''datetime.timedelta'不支持的操作数类型''
和''datetime.timedelta''
当然,可以扩展timedelta类来实现分工,
def _microseconds(个体经营):
返回(自我) .days * 86400 + self.seconds)* 1000000 +
self.microseconds
def __truediv __(self,other):
if isinstance(其他,datetime.timedelta):
返回self._microseconds()/ other._microseconds()
else:
return datetime.timedelta( 0,0,self._microseconds()/
其他)
def __floordiv __(自我,其他):
if isinstance(其他,日期时间) .timedelta):
返回self._microseconds()// other._microseconds()
返回NotImplemented
但为什么是一个基本的算术操作标准
日期时间模块中缺少什么?
If I try to write something like:
num_weeks = time_diff / datetime.timedelta(days=7)
I get:
TypeError: unsupported operand type(s) for /: ''datetime.timedelta''
and ''datetime.timedelta''
Of course, one could extend the timedelta class to implement division,
def _microseconds(self):
return (self.days * 86400 + self.seconds) * 1000000 +
self.microseconds
def __truediv__(self, other):
if isinstance(other, datetime.timedelta):
return self._microseconds() / other._microseconds()
else:
return datetime.timedelta(0, 0, self._microseconds() /
other)
def __floordiv__(self, other):
if isinstance(other, datetime.timedelta):
return self._microseconds() // other._microseconds()
return NotImplemented
but why is a basic arithmetic operation missing from the standard
datetime module?
推荐答案
Le Jeudi 25 Mai 2006 00:07, Dan Bishopaécrit*:
Le Jeudi 25 Mai 2006 00:07, Dan Bishop a écrit*:
如果我尝试写类似的东西:
* * num_weeks = time_diff / datetime.timedelta(days = 7)
If I try to write something like:
* * num_weeks = time_diff / datetime.timedelta(days=7)
因为它没有意义,你想要的是:
num_weeks = time_diff.days / 7
或
num_weeks =(time_diff / 7).days
-
_____________
Maric Michaud
_____________
亚里士多德 - www。 aristote.info
3 place des tapis
69004里昂
电话:+33 426 880 097
because it has no meaning, what you want is :
num_weeks = time_diff.days / 7
or
num_weeks = (time_diff / 7).days
--
_____________
Maric Michaud
_____________
Aristote - www.aristote.info
3 place des tapis
69004 Lyon
Tel: +33 426 880 097
On 25/05/2006 8:25 AM,Maric Michaud写道:
On 25/05/2006 8:25 AM, Maric Michaud wrote:
Le Jeudi 25 Mai 2006 00:07,Dan Bishopaécrit:
Le Jeudi 25 Mai 2006 00:07, Dan Bishop a écrit :
如果我试着写s类似于:
num_weeks = time_diff / datetime.timedelta(days = 7)
If I try to write something like:
num_weeks = time_diff / datetime.timedelta(days=7)
因为它没有任何意义,你想要的是:
num_weeks = time_diff.days / 7
或
num_weeks =(time_diff / 7).days
because it has no meaning, what you want is :
num_weeks = time_diff.days / 7
or
num_weeks = (time_diff / 7).days
两个持续时间的比例没有意义???
The ratio of two durations has no meaning???
On 25/05/2006 8:25 AM,Maric Michaud写道:
On 25/05/2006 8:25 AM, Maric Michaud wrote:
Le Jeudi 25 Mai 2006 00:07,Dan Bishopaécrit:
Le Jeudi 25 Mai 2006 00:07, Dan Bishop a écrit :
如果我尝试写类似的东西:
num_weeks = time_diff / datetime.timedelta(days = 7)
If I try to write something like:
num_weeks = time_diff / datetime.timedelta(days=7)
因为它没有任何意义,你想要的是:
num_weeks = time_diff.days / 7
或
num_weeks =(time_diff / 7).days
because it has no meaning, what you want is :
num_weeks = time_diff.days / 7
or
num_weeks = (time_diff / 7).days
两个持续时间的比例没有意义???
The ratio of two durations has no meaning???
>
这篇关于为什么timedeltas不能被分割?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!