0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Pydanticの方に応じて場合分けする方法

Posted at

注意
未経験から転職した、一年目のエンジニアが、作成したものになります。
そのため、至らぬ表現や、誤った表現をしている場合があります。

経験豊富な先輩エンジニアの方々へ
もし、誤った情報を記載していた際は、大変お手数をおかけしますが、ご指摘いただけますと幸いです。

少しでも、皆様のお役に立てれば幸いです。

記事の内容

  • やりたいこと
  • なぜ行ったか
  • 対処方法
  • 参考文献

やりたいこと

適用した型の情報に応じて場合分けをしたい。

なぜ行ったか

Pydantic で、自身のスキーマ(型)を作成した。

そしてスキーマ(型)情報を、関数の引数として適用した。

その際に、型の情報を取得するのに苦戦したため、この記事を共有いたします。

対処方法

type 関数を使用して、型情報を取得できる

if type(型が適用された引数) = スキーマ()のクラス
from pydantic import BaseModel

class User(BaseModel):
    name: str
    age: int

user = User(name='Hoge', age=22)

if type(user) == User
  # userインスタンスの方がUserだったときの記述を書く

Pydantic には、自身の型を取得するメソッドは見当たらず...
しかし、type 関数を使用すれば、型情報が得られることがわかりました。

少しでも、お役に立てれば幸いです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?