GeezerVison is showing www.python.jp — プログラミング言語 Python 総合情報サイト - python.jp
Python.jp プログラミング言語 Python情報サイト¶
プログラミング言語 Python(パイソン) の概要を紹介します
プラットフォーム別にPythonのインストール方法・実行方法を解説します
パソコンにPythonをインストールし、Visual Studio Codeを使って実際にプログラミングを行う手順を解説します。
Discord によるチャットサービスです。情報交換・質問・雑談などにご利用ください。
DjangoCongress JP 2025の発表内容とYouTube Liveでの配信が決定¶
2025年2月22日(土曜日)開催予定のDjangoCongress JP 2025の配信が決定しました。
以下のYouTube Liveにて配信されます:
今年はDjangoだけでなくFastAPIなど非同期Webに関するトークも予定されています。またDjang
Python 3.10では PEP 647: ユーザ定義の型ガード が導入され、型ガード を定義して型推論に利用できるようになりました。
from typing import TypeGuard
def is_int(x: object) -> TypeGuard[int]:
return isinstance(x, int)
def func(x:object) -> None:
if is_int(x):
reveal_type(x) # x は int
型ガードについては、Python 3.10の新機能(その7) ユーザ定義型ガード の解説を参照してください。
型ガー
PEP 705: TypedDict: Read-only items では、TypedDict に読み取り専用の項目を指定できるようになりました。
from typing import TypedDict, ReadOnly
class FooDict(TypedDict):
x: int
y: int
z: ReadOnly[int] # z は読み取り専用
foo: FooDict = {"x": 1, "y": 2, "z": 3}
foo["x"] = 4 # Ok
foo["z"] = 5 # エラー: "z" is a read-only key in "FooDict"
ただし、リストな
PEP 702: 型システムを利用した非推奨の指定¶
従来のPythonでは、Deprecate(廃止予定)のAPIを警告するために、次のように DeprecationWarning を使っていました。
import warnings
def func():
warnings.warn("deprecated", DeprecationWarning)
return 0
しかし、この方法では実行するまで警告が表示されないため、警告を見逃されることがありました。
そこで、PEP 702では、@warnings.deprecated デコレータ
従来のジェネリック型では、型を決定できない型パラメータは Any などにされていました。
class A[T]:
foo: T | None
def __init__(self, foo: T | None=None):
self.foo = foo
a = A()
reveal_type(a) # Mypyでは a は A[Any] となる
PEP 696: Type Defaults for Type Parameters では、指定されていない型パラメータにデフォルトの型を指定できるようになりました。
class A[T=int]: # T のデフォルトを int に指定
foo: T |
ドキュメント日本語訳プロジェクト
Pythonドキュメント日本語訳プロジェクトは、 現在、Python 3.9 のドキュメントに対応するために活動中です。
Amazon.co.jpアソシエイト: Python関連書籍