portur.top

  

Bästa artiklarna:

  
Main / Hur man ringer funktion i klass python

Hur man ringer funktion i klass python

Genom att använda vår webbplats bekräftar du att du har läst och förstått vår cookiepolicy, integritetspolicy och våra användarvillkor. Jag har den här koden som beräknar avståndet mellan två koordinater. De två funktionerna ligger båda inom samma klass. Eftersom dessa är medlemsfunktioner kallar du det som en medlemsfunktion på instansen själv.

Det fungerar inte eftersom distToPoint finns i din klass, så du måste prefixa det med klassnamnet om du vill hänvisa till det, så här: Du bör dock inte göra det så. Ett bättre sätt att göra det är att hänvisa till metoden direkt genom klassinstansen, som är det första argumentet för en klassmetod, som så: Python-samtalsfunktion inom klass Ställ fråga.

Men hur kallar jag funktionen distToPoint i funktionen är nära? Aran-Fey 20. Steven Steven 1 013 3 3 guldmärken 10 10 silvermärken 11 11 bronsmärken. Vad händer om isNear och distToPoint tar olika argument. Hur kan vi då kalla distToPoint som finns i klassen? Vem som helst kan förklara det för mig tack. Jeff Mercado Jeff Mercado 95. Men var försiktig själv.

Vad händer om vi inte använder oss själv? Aleksi Torhamo Aleksi Torhamo 4 659 2 2 guldmärken 26 26 silvermärken 35 35 bronsmärken. Om det är en generisk metod som är gemensam för alla instanser och utan några specifika variabler som refereras till i metoden, kan du förklara varför man inte ska använda klassnamn.

Det finns bara en situation där man ska använda klassnamn. Om du försökte ringa själv. Om inte inuti en klass finns det bara en situation där du skulle använda klassnamn. Observera att du bryter undertyps polymorfism när du ringer en metod uttryckligen genom en klass i båda exemplen ovan, du vill specifikt göra det. Så kort sagt: Om metoden inte har åsidosatts är de två sätten lika, men själva.

Nu kommer du till detaljerna i din fråga: Du gör dem genom att lägga till klassmetod före metoden, och efter det kommer du inte att få ett instansjag som det första argumentet längre - istället får du klassen, så du bör namnge det första argumentet t.ex.

Efter det kan du ringa klassmetoden antingen som objekt. Naturligtvis, om du inte har en relevant instans tillgänglig, bör du i alla fall ringa en klassmetod direkt genom en klass. Registrera dig eller logga in Registrera dig med Google.

Registrera dig med Facebook. Registrera dig med e-post och lösenord. Lägg upp som gästnamn. E-post krävs, men visas aldrig. Kunskapsteknik: visas på Meta. Tagg synonym instrumentpanel 2. Vi testar annonser i hela nätverket. Länkad 29. Relaterat 1720. Frågor om heta nätverk. Frågeflöde.

Stack Overflow fungerar bäst med JavaScript aktiverat.

(с) 2019 portur.top