예제 #1
0
파일: day.py 프로젝트: cage433/pymodels
 def __sub__(self, other):
     if type(other) == int:
         daysdelta = timedelta(other)
         d = date.__sub__(self, daysdelta)
         return Day(d.year, d.month, d.day)
     else:
         return date.__sub__(self, other)
예제 #2
0
    def __sub__(self, other):
        result = date.__sub__(self, other)

        if result is NotImplemented:
            return result

        if isinstance(result, date):
            return self.from_datetime(result)
        else:
            return result
예제 #3
0
 def __sub__(self, x):
     """
     Sottrae 'x' dalla data; se x è di tipo numerico (int/float/long) viene
     restituita la data defalcata di 'x' giorni, altrimenti funzionalità
     standard della sottrazioe da un datetime.date di altro (timdelta)
     """
     if isinstance(x, (int, float, long)):
         #sottraggo un numero dalla data, detraggo in giorni
         return _date(self.year, self.month, self.day) - timedelta(days=x)
     d = date.__sub__(self, x)
     if isinstance(x, (_date, _datetime)):
         # data-data = timedelta, lo restituisco
         return d
     #sottrazione standard
     return _date(d.year, d.month, d.day)
예제 #4
0
 def __sub__(self, x):
     """
     Sottrae 'x' dalla data; se x è di tipo numerico (int/float/long) viene
     restituita la data defalcata di 'x' giorni, altrimenti funzionalità
     standard della sottrazioe da un datetime.date di altro (timdelta)
     """
     if isinstance(x, (int, float, long)):
         #sottraggo un numero dalla data, detraggo in giorni
         return _date(self.year, self.month, self.day)-timedelta(days=x)
     d = date.__sub__(self, x)
     if isinstance(x, (_date, _datetime)):
         # data-data = timedelta, lo restituisco
         return d
     #sottrazione standard
     return _date(d.year, d.month, d.day)
예제 #5
0
 def __sub__(self, other):
     result = date.__sub__(self, other)
     if not isinstance(result, timedelta):
         result = self.fromsolardate(result)
     return result
예제 #6
0
 def __sub__(self, other):
     result = date.__sub__(self, other)
     if not isinstance(result, timedelta):
         result = self.fromsolardate(result)
     return result
예제 #7
0
 def __sub__(self, td):
     newdate = date.__sub__(self, td)
     if isinstance(newdate, date):
         return ApexDate(newdate.year, newdate.month, newdate.day)
     return newdate # actually a timedelta
예제 #8
0
파일: day.py 프로젝트: cage433/pymodels
 def time_since(self, d: date) -> float:
     diff = date.__sub__(self, d)
     return diff.days / 365.25