Vad är en metod?
En metod är en funktion inuti en klass som hör till ett objekt. Den används för att utföra en handling med (eller på) objektet.
En metod skapas på samma sätt som en vanlig funktion – men med ett viktigt tillägg: den har alltid self som första parameter.
Exempel: En metod som skriver ut info
class Dog:
def __init__(self, name, age):
self.name = name
self.age = age
def speak(self):
print(f"{self.name} säger voff!")speak()är en metod som hör till klassenDog.- Den använder
self.nameför att komma åt objektets namn.
Använda metoden
my_dog = Dog("Buddy", 3)
my_dog.speak() # Skriver ut: Buddy säger voff!Vi anropar metoden via objektet – my_dog.speak().
Metoder med argument
Metoder kan också ta egna argument, precis som vanliga funktioner.
class Dog:
def __init__(self, name, age):
self.name = name
self.age = age
def greet(self, owner_name):
print(f"Hej {owner_name}, jag heter {self.name}.")
dog1 = Dog("Bella", 4)
dog1.greet("Oskar") # Skriver ut: Hej Oskar, jag heter Bella.Metoder som returnerar värden
Du kan också skapa metoder som returnerar något istället för att skriva ut direkt.
class Dog:
def __init__(self, name, age):
self.name = name
self.age = age
def get_age_in_dog_years(self):
return self.age * 7
dog1 = Dog("Rex", 5)
dog_years = dog1.get_age_in_dog_years()
print(f"{dog1.name} är {dog_years} hundår gammal.")Sammanfattning
| Term | Förklaring |
|---|---|
| Metod | En funktion som tillhör ett objekt. |
self | Referens till det aktuella objektet. Behövs alltid som första parameter. |
| Anrop | Skriv objekt.metod() för att använda metoden. |
| Returvärde | Metoder kan returnera värden med return. |