Darasa linaweza kurudisha python ya thamani?
Darasa linaweza kurudisha python ya thamani?

Video: Darasa linaweza kurudisha python ya thamani?

Video: Darasa linaweza kurudisha python ya thamani?
Video: Learn Python OOP - Object Oriented Programming - Part-1 2024, Mei
Anonim

A thamani sio kitu tofauti na kitu ndani Chatu . Unapopiga simu a darasa kitu (kama MyClass() au list()), it anarudi mfano wa hilo darasa . Unapochapisha kitu (yaani kupata uwakilishi wa kamba ya kitu), _str_ au _repr_ mbinu ya uchawi ya kitu hicho inaitwa na thamani iliyorejeshwa iliyochapishwa.

Vile vile, unaweza kuuliza, je, mjenzi anaweza kurudisha thamani katika Python?

Chatu inatarajia mjenzi kwa kurudi Hakuna na inashindwa ikiwa ni anarudi kitu kingine chochote. Katika Smalltalk, mpya sio neno kuu; ni ujumbe unaotuma kwa darasa (ambalo lenyewe ni kitu). Njia mpya ya darasa huunda kitu na anarudi hiyo.

Kando ya hapo juu, kazi inaweza kurudisha darasa? Ikiwa a njia au kazi inarudi kitu cha a darasa ambayo hakuna mjenzi wa nakala ya umma, kama vile ostream darasa , ni lazima kurudi rejeleo la kitu. Baadhi ya mbinu na kazi , kama vile mwendeshaji mgawo aliyejaa kupita kiasi, inaweza kurudi ama kitu au marejeleo ya kitu.

Baadaye, swali ni, je _ inaweza _ kurudisha thamani?

_ndani yake_ njia anarudi a thamani The _ndani yake_ njia ya darasa hutumiwa anzisha vitu vipya, sio kuunda. Kwa hivyo, haipaswi kurudi yoyote thamani . Kurudi Hakuna iliyo sahihi kwa maana kwamba hakuna kosa la wakati wa kukimbia mapenzi kutokea, lakini inapendekeza kwamba thamani iliyorejeshwa ina maana, ambayo sivyo.

Unarudishaje kitu kwenye Python?

The kurudi kauli hufanya a chatu kazi ya kutoka na kurudisha thamani kwa mpigaji wake. Madhumuni ya kazi kwa ujumla ni kuchukua pembejeo na kurudi kitu. A kurudi taarifa, ikitekelezwa, husimamisha mara moja utekelezaji wa chaguo la kukokotoa, hata kama si taarifa ya mwisho katika chaguo la kukokotoa.

Ilipendekeza: