Pydantic beschränkt die Zeichenfolge auf Literalwerte und konvertiert sie in KleinbuchstabenPython

Python-Programme
Guest
 Pydantic beschränkt die Zeichenfolge auf Literalwerte und konvertiert sie in Kleinbuchstaben

Post by Guest »

Ich weiß, dass Sie ein Pydantic-Feld auf bestimmte Werte beschränken können:

Code: Select all

import pydantic
from typing import Literal

class Animal(pydantic.BaseModel):
species: Literal["antelope"] | Literal["zebra"]
Und ich weiß, dass Sie Eingabedaten in Kleinbuchstaben umwandeln können:

Code: Select all

class Animal(pydantic.BaseModel):
species: pydantic.constr(to_lower=True)
Aber ich kann mir nicht vorstellen, wie ich diese beiden Funktionen kombinieren würde, damit ich die Groß- und Kleinbuchstabenversionen meines Literalsatzes nicht buchstabieren muss:

Code: Select all

class Animal(pydantic.BaseModel):
species: pydantic.constr(to_lower=True)
Ich sehe einen Ausweg mit Regex, aber es scheint, dass dies ein so häufiger Anwendungsfall ist, dass die Verwendung von Regex wie eine unpraktische Problemumgehung erscheint (was wäre, wenn meine zulässigen Werte ... Regex-artige Zeichen? Dann muss ich sie maskieren)

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post