Yksittäinen periytyminen
Luokaa lapsiluokkia, jotka perivät attribuutteja ja metodeja yläluokalta.
Yksittäinen periytyminen on ilmainen Python Academy-oppitunti CoddyKitissä. Tämä on oppitunti 1/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Python Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Python Academy-kurssilla on yhteensä 4 oppituntia.
Johdanto
Aliluokan määrittäminen
class Animal:
def __init__(self, name): self.name = name
def speak(self): return '...'
class Dog(Animal):
def speak(self): return 'Woof'
d = Dog('Rex')
print(d.name, d.speak())super().__init__-metodin kutsuminen
class Animal:
def __init__(self, name): self.name = name
class Dog(Animal):
def __init__(self, name, breed):
super().__init__(name)
self.breed = breed
d = Dog('Rex', 'Labrador')
print(d.name, d.breed)Metodien periminen
class Vehicle:
def start(self): return 'starting'
class Car(Vehicle):
pass
print(Car().start())Metodien korvaaminen
class Shape:
def area(self): return 0
class Square(Shape):
def __init__(self, s): self.s = s
def area(self): return self.s**2
print(Square(4).area())Yliluokan toiminnan laajentaminen
class Animal:
def describe(self): return 'I am an animal'
class Dog(Animal):
def describe(self): return super().describe() + ' and a dog'
print(Dog().describe())isinstance() ja issubclass()
class Animal: pass
class Dog(Animal): pass
d = Dog()
print(isinstance(d, Animal))
print(issubclass(Dog, Animal))Aliluokan uudet metodit
class Animal:
def __init__(self, name): self.name = name
class Dog(Animal):
def fetch(self): return f'{self.name} fetches!'
print(Dog('Rex').fetch())Suojatut attribuutit
class Animal:
def __init__(self, name): self._name = name
def name(self): return self._name
class Dog(Animal):
def bark(self): return f'{self._name} barks'
print(Dog('Rex').bark())Abstraktit kantaluokat
from abc import ABC, abstractmethod
class Shape(ABC):
@abstractmethod
def area(self): pass
class Circle(Shape):
def __init__(self, r): self.r = r
def area(self):
import math
return math.pi * self.r**2
print(Circle(3).area())__bases__ ja __mro__
class A: pass
class B(A): pass
class C(B): pass
print(C.__mro__)Pikatarkistus
Kertaus
Jatka
Opi Python tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 76
- Oppitunnit
- 320
Usein kysytyt kysymykset
Onko oppitunti ”Yksittäinen periytyminen” ilmainen?
Kyllä – oppitunnin ”Yksittäinen periytyminen” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Python Academy-kurssin, päivitä CoddyKit PROhon. Python Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Yksittäinen periytyminen”?
Luokaa lapsiluokkia, jotka perivät attribuutteja ja metodeja yläluokalta. Harjoittelet Python Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Python Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Python Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/4.
Kuinka kauan ”Yksittäinen periytyminen”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Python Academy-oppitunnilla?
Kyllä. Jokainen Python Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Yksittäinen periytyminen
- Metodien ylikirjoitus ja super()
- Moniperintä ja MRO
- Polymorfismi ja ankkatyypitys