schommelen

Eenvoudige schema-validatie-bibliotheek
Download nu

schommelen Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • Other/Proprietary Li...
  • Prijs:
  • FREE
  • Naam uitgever:
  • Andrey Popp

schommelen Tags


schommelen Beschrijving

Schemify is een zeer eenvoudige Python Schema-validatiebibliotheek. De broncode: van Webob.exc Import HTTPBADREQUEST__ALL__ = ('Validate', 'Opt', 'Alles', 'ValidationError') Klasse ValidationError (ValidorRor): "" "Validatiefout" "" Def __init __ (Self, Fout): Self.Error = Fout Super (ValueError, Self) .__ init __ (Fout) Def Validate (schema, gegevens): als Schema alles is: gegevens retourneren als Isinstance (Schema, Tuple) en Hasattr (Schema, '_replace'): resultaat = validate (schema._asdict (), gegevens) retourtype (schema) (** Resultaat) als Isinstance (schema, dict): resultaat, fouten = {}, {} voor k, v in schema.items (): Zo niet K in gegevens: zo niet isinstance (v, opt): fouten = 'Ontbrekende% S-toets'% k alif v.default is niet _no_default: resultaat = v .default Doorgaan als Isinstance (V, OPT): V = V.Type Probeer: Resultaat = Valideren (V, Data ) behalve validatieError als E: Fouten = E.Error IF Fouten: ValidationError verhogen (Fouten) Return Resultaat Elif Isinstance (schema, lijst): Assert Len (schema) == 1, 'Ongeldige schema' Return , v) voor v in gegevens] ELIF ISINSTANTIE (schema, tuple): zo niet LEN (schema) == Len (gegevens): ValidationError verhogen ('Lengte moet gelijk zijn aan% D'% LEN ( Schema)) Return Tuple (validate (s, v) voor s, v in zip (schema, gegevens)) anders: Probeer: Retourschema (gegevens) behalve waardeerror als e: ValidationError verhogen (STR (E)) Alles = Object ( ) _no_default = Object () KLASSE OPT (Object): "" "Marker voor optionele elementen in container" "" Def __init __ (Zelf, Type, Default = _NO_DEFAULT): Self.Type = Type Self.deFault = DefaultProduct's Homepage


schommelen Gerelateerde software