Middle
Kā izsaukt katru no A klases metodiem?
sobes.tech AI
Atbilde no AI
Pieņemsim, mums ir klase A ar metodēm:
import time
class A:
def what_time(self):
return f'{time.time()}'
@property
def useless_getter(self):
return self.text
def __private_or_public(self):
return 1
def __str__(self):
return self.text
def __init__(self, text):
self.text = text
Lai izsauktu katru metodi:
-
what_time— parasta metode, izsauc caur piemēru:a = A('sveiki') print(a.what_time()) -
useless_getter— īpašība, izsauc kā atribūtu bez iekavām:print(a.useless_getter) -
__private_or_public— metode ar dubultu apakšsvītru, nosaukums mainās (name mangling), lai izsauktu:print(a._A__private_or_public()) -
__str__— īpaša metode, automātiski izsaucama, pārvēršot uz virkni:print(str(a))
Tādēļ, lai izsauktu privātu metodi ar dubultu apakšsvītru, jāizmanto ar klases nosaukumu saistīts nosaukums: _A__private_or_public().