Loading lesson path
Methods are functions that belong to a class. They define the behavior of objects created from the class.
Create a method in a class: class Person:
def __init__(self, name):
self.name = name def greet(self):
print("Hello, my name is " + self.name)Formula
p1 = Person("Emil")p1.greet()
All methods must have self as the first parameter.
Methods can accept parameters just like regular functions:
class Calculator:
def add(self, a, b):
return a + b def multiply(self, a, b):
return a * b calc = Calculator()
print(calc.add(5, 3))
print(calc.multiply(4, 7))Methods can access and modify object properties using self
A method that accesses object properties: class Person:
def __init__(self, name, age):
self.name = name self.age = age def get_info(self):
return f"{self.name} is {self.age} years old"Formula
p1 = Person("Tobias", 28)print(p1.get_info())Methods can modify the properties of an object:
A method that changes a property value: class Person:
def __init__(self, name, age):
self.name = name self.age = age def celebrate_birthday(self):
self.age += 1 print(f"Happy birthday! You are now {self.age}")Formula
p1 = Person("Linus", 25)p1.celebrate_birthday() p1.celebrate_birthday() The str() Method
str() method is a special method that controls what is returned when the object is printed:
str() method: class Person:
def __init__(self, name, age):Formula
self.name = name self.age = age p1 = Person("Emil", 36)print(p1)str() method: class Person:
def __init__(self, name, age):
self.name = name self.age = age def __str__(self):
return f"{self.name} ({self.age})"Formula
p1 = Person("Tobias", 36)print(p1)A class can have multiple methods that work together:
Create multiple methods in a class: class Playlist:
def __init__(self, name):Formula
self.name = name self.songs = []def add_song(self, song):
self.songs.append(song)
print(f"Added: {song}")
def remove_song(self, song):if song in self.songs: self.songs.remove(song)
print(f"Removed: {song}")
def show_songs(self):
print(f"Playlist '{self.name}':")for song in self.songs:
print(f"- {song}")Formula
my_playlist = Playlist("Favorites")my_playlist.add_song("Bohemian Rhapsody") my_playlist.add_song("Stairway to Heaven") my_playlist.show_songs()
You can delete methods from a class using the del keyword:
Delete a method from a class: class Person:
def __init__(self, name):
self.name = name def greet(self):
print("Hello!")Formula
p1 = Person("Emil")del Person.greet p1.greet() # This will cause an error