overbelasten

Eenvoudige overbelasting van methoden en functies via een decorator van een @overladen
Download nu

overbelasten Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • BSD License
  • Naam uitgever:
  • Richard Jones
  • Uitgever website:
  • http://code.google.com/p/bitstring/

overbelasten Tags


overbelasten Beschrijving

Eenvoudige overbelasting van methoden en functies via een decorator van @overladen Overbelasting is een eenvoudige overbelasting van methoden en functies via een @Overload-decorateur.Deze module laat men meerdere interfaces leveren voor een functies, methoden, klasse-ethoden, statischmethoden of klassen. Zie hieronder voor sommige opmerkingen over de klassen overbelasting, u vreemde persoon u. De juiste implementatie wordt gekozen op basis van het calling-argumentpatroon. Voorbeeld: >>> Klasse A (Object): ... @overladen ... Def-methode (Zelf , A): ... Return 'a' ... @ methode.add ... Def methode (Zelf, A, B): ... Return 'A, B' ... >>> A = A ( ) >>> a.method (1) 'A' >>> a.method (1, 2) 'A, b'the overbelasting handgrepen vast, trefwoord, variabele (* args) en willekeurig trefwoord (** trefwoorden) argumenten . Het verwerkt ook annotaties als die annotaties typen zijn: >>> @overload ... Def Func (A: INT): ... return 'int' ... >>> @ func.add ... Def func ( A: Str): ... Return 'Str' ... >>> FUNC (1) 'INT' >>> FUNC ('S') 'Str' >>> FUNC (1.0) TraceBack (meest recente oproep Laatste ): Bestand "", regel 1, in bestand "overbelasting.py", lijn 94, in F TypeError ('ongeldig gesprek argument (en)') TypeError: ongeldig gespreksargument (en) Deze functie (en momenteel de module in het algemeen) vereist Python 3.De DOCSTRING EN NAAM (IE. Documentatie) van de resulterende callable zal overeenkomen Dat van de eerste callable overbelaste. Overloading Classesoverlowing-klassen Hiermee kunt u een klassensoort selecteren op basis van de constructieargumenten van elke __NEW__-methode van elk alternatieve type. Er is echter een vangst: de __NEW__-methode moet expliciet de basisklasse __NEW__-methode roepen, in plaats van super () zoals altijd. Dit komt omdat na @overladen de klasse een functie is en super () niet leuk vindt om functies te worden gepasseerd. Dus in plaats van: @Overloadclass A (Object): DEF __NEW __ (CLS): # Dit zal mislukken omdat "A" een functie is Nu retourneren Super (A, CLS) .__ NIEUWE __ (CLS) U moet: @overloadclass A (object) : DEF __NEW __ (CLS): # moet expliciet verwijzen naar het rendementobject van de basisklasse .__ NIEUWE __ (CLS) Ik laat het aan de lezer om het gebruik van @Overlofingsklassen te rechtvaardigen. Vereisten: · Python Wat is er nieuw in deze release: · Deze versie heeft de tekst van de ongeldige oproeptypeError gewijzigd. Verwijderde debuggenafdrukken.


overbelasten Gerelateerde software

pswinpy

Een pakket voor het verzenden van SMS-berichten met behulp van de PSWINCOM SMS-gateway ...

116

Downloaden