Using Python for date calculations
Mark Lawrence
breamoreboy at yahoo.co.uk
Fri Nov 21 05:20:06 EST 2014
On 21/11/2014 08:50, Gary Herron wrote:
> On 11/21/2014 12:35 AM, Steve Hayes wrote:
>> I've finally found a use for Python.
>>
>> When, in the course of my genealogy research, I look at census or burial
>> records, I often want to work out a person's date of birth from their
>> age.
>> It's a simple matter of mental arithmetic, but I sometimes get it
>> wrong, and
>> mislead myself. There are calculators and date calculation programs,
>> but they
>> are usually too complicated and try to do too much, so by the time you've
>> worked out what to do it takes much longer.
>>
>> This Python script does it for me.
>>
>> year = input("Year: ")
>> age = input("Age: ")
>> born = year-age
>> print 'Year of birth:', born
>>
>> It's so simple, so elementary, that it's not really worth writing about,
>> except for the fact that it illustrates the KISS principle.
>>
>> It is sometimes better to have a simple program that does one thing
>> well than
>> a complex one that does lots of things, but none of them very
>> efficiently.
>>
>> The average hand calculator can do the same job, but you have to pick
>> it up
>> and put it down, and you can't easily see if you've made a typo.
>>
>> Having said that, however, yes, I would perhaps like to use Python for
>> more
>> complicated date processing routines, namely to convert the kinds of
>> dates
>> produced by genealogy programs to a simple yyyy-mm-dd that computer
>> database
>> programs can understand, so that "Abt May 1677" would be rendered as
>> "1677-05-00"
>>
>> Has anyone done something like that in Python?
>>
>>
>>
>
> The datetime module has lots of capabilities including the several you
> mention.
>
> See https://docs.python.org/2/library/datetime.html
>
> Gary Herron
>
As we're now firmly heading into the Python 3 era would people please be
kind enough to use the Python 3 links. I know it's only a single
character change but it's the principle to me. TIA.
--
My fellow Pythonistas, ask not what our language can do for you, ask
what you can do for our language.
Mark Lawrence
More information about the Python-list
mailing list