Sobes.tech
Middle
163

Mis on esimese klassi objekt?

Vastus AI-lt

sobes.tech AI

Pythonis esimese klassi objekti (first-class object) on entiteet, millel on järgmised omadused:

  • Võib omistada muutujale.
  • Võib edastada funktsioonile argumendina.
  • Võib tagastada funktsioonist.
  • Võib salvestada andmestruktuuri (näiteks nimekirja, sõnastikku).

Pythonis on funktsioonid esimese klassi objektid.

# Funktsioon omistatud muutujale
def hello():
    print("Tere!")

x = hello
x() # Funktsiooni kutsumine muutuja kaudu

# Funktsioon edastatakse argumendina
def apply_func(func):
    func()

apply_func(hello)

# Funktsioon tagastatakse teiselt funktsioonilt
def create_greeter():
    def greet():
        print("Tervitused!")
    return greet

greeter = create_greeter()
greeter()

# Funktsioon salvestatud andmestruktuuri
funcs = [hello, greet] # eelneva näite greet
for func in funcs:
    func()