0Pricing
MCP Academy · レッスン

制約、デフォルト値、列挙型

値の範囲を制限し、安全に固定の選択肢を提供します。

「制約、デフォルト値、列挙型」はCoddyKit上の無料MCP Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはMCP Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 MCP Academyコースには全4レッスンが含まれています。

このレッスンの一部はまだ翻訳されておらず、英語で表示されています。

Beyond Just Types

Types say what kind of value is allowed, but you often want tighter rules: a limit must be positive, a name not empty. That's where constraints come in.

Meet Field

Pydantic's Field lets you attach rules to a field, like minimum and maximum values, right in the model definition.

from pydantic import BaseModel, Field

class Page(BaseModel):
    size: int = Field(ge=1, le=100)

Numeric Bounds

Use ge and le for greater-or-equal and less-or-equal, or gt and lt for strict bounds, to keep numbers in a safe range.

String Length Limits

For text, min_length and max_length stop empty strings and runaway input before they reach your logic.

name: str = Field(min_length=1, max_length=50)

Pattern Matching

Add a pattern to require a string match a regular expression, perfect for codes, slugs, or simple identifiers.

Simple Defaults

Give a field a value and it becomes optional with a default. The model may omit it and your tool uses the fallback.

limit: int = 10

Defaults Inside Field

You can combine a default with constraints by passing it to Field, keeping the rule and the fallback in one place.

limit: int = Field(default=10, ge=1, le=100)

Fixed Choices with Enum

When only a few values make sense, an Enum limits the field to that exact set, so the model cannot invent options.

from enum import Enum

class Sort(str, Enum):
    asc = "asc"
    desc = "desc"

Use the Enum as a Type

Declare a field with the enum type and Pydantic accepts only its members, rejecting any other value automatically.

order: Sort = Sort.asc

Literals for Tiny Sets

For a quick fixed set you can also use Literal, which lists allowed values inline without a separate Enum class.

from typing import Literal
unit: Literal["c", "f"] = "c"

Constraints Reach the Model

These rules become part of the JSON schema, so the model sees the allowed ranges and choices and tends to obey them.

Quick Check

You want a field to accept only asc or desc. What fits best?

Recap

Use Field for bounds and lengths, plain defaults for optional values, and Enum or Literal for fixed choices the model must respect. ✅

よくある質問

「制約、デフォルト値、列挙型」レッスンは無料ですか?

はい。「制約、デフォルト値、列挙型」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、MCP Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 MCP Academyコースには全4レッスンが含まれています。

「制約、デフォルト値、列挙型」で何を学びますか?

値の範囲を制限し、安全に固定の選択肢を提供します。 ブラウザで直接実行するハンズオンコードでMCP Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

MCP Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのMCP Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。

「制約、デフォルト値、列挙型」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このMCP Academyレッスンでコードを書いて実行できますか?

はい。すべてのMCP Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 自由形式の引数よりスキーマが優れている理由
  2. Pydanticでモデル入力を定義する
  3. 制約、デフォルト値、列挙型
  4. モデルを導くフィールド説明
← MCP Academyに戻る