On 12/29/05, Robert Brewer fumanchu@amor.org wrote:
Just to keep myself sane...
def date_range(start=None, end=None): if start == None: start = datetime.date.today() if end == None: end = datetime.date.today() return end - start
Are you saying the "if" statements will raise TypeError if start or end are dates? That would be a sad day for Python. Perhaps you're saying that there is a "meaningful comparison" between None and anything else, but please clarify if so.
Yes, I'm suggesting that they will raise a TypeError. Your example shows that the change is not compatible with a lot of existing Python code, which means that it's a Python 3000 thing. The following code will continue to work:
def date_range(start=None, end=None): if start is None: start = datetime.date.today() if end is None: end = datetime.date.today() return end - start
Using "is None" instead of "== None" is considered a better style even now.
Noam