10  Classes

import sys
sys.version
'3.13.3 (main, Apr  8 2025, 13:54:08) [Clang 16.0.0 (clang-1600.0.26.6)]'
class Person:
    def __init__(self, FirstName, LastName, DOB, Height, Weight):
        self.FirstName = FirstName
        self.LastName = LastName
        self.DOB = DOB
        self.Height = Height
        self.Weight = Weight
p = Person("Julia", "Lang", (2012, 2, 12), 1.73, 51)
p
<__main__.Person at 0x107d586e0>
type(p)
__main__.Person
type(p.DOB)
tuple

10.1 Methods

Let’s add a method that calculates a person’s age in years today by substracting today’s date from their birthdate:

class Person:
    def __init__(self, FirstName, LastName, DOB, Height, Weight):
        self.FirstName = FirstName
        self.LastName = LastName
        self.DOB = DOB
        self.Height = Height
        self.Weight = Weight
    
    def getAge(self):
        from datetime import datetime
        return (datetime.now() - datetime(*self.DOB)).days/365
p = Person("Julia", "Lang", (2012, 2, 12), 1.73, 51)
p.getAge()
13.241095890410959

10.2 Resources