Python.jp プログラミング言語 Python情報サイト

Pythonの紹介

プログラミング言語 Python(パイソン) の概要を紹介します

Python環境構築ガイド

プラットフォーム別にPythonのインストール方法・実行方法を解説します

ゼロからのPython入門講座

ブラウザからPythonを実行できるサービスGoogle Colaboratoryを使って、Pythonの基礎を学びましょう

Visual Studio Code でPython入門 【Windows編】

パソコンにPythonをインストールし、Visual Studio Codeを使って実際にプログラミングを行う手順を解説します。

Discordサーバ

Discord によるチャットサービスです。情報交換・質問・雑談などにご利用ください。

コミュニティ

日本のPythonコミュニティ

2022-10-10 Python 3.11の新機能(その9) 型ヒントの新機能 - その他

型ヒント関連の新機能はまだ他にもありますが、ここでは以下の機能を紹介します。

TypedDict と NamedTuple で Generic を定義可能に

Python 3.10までは、TypedDictNamedTuple を定義するとき、派生元として Genericなど、他の型を指定できませんでした。

このため、TypedDictNamedTuple をジェネリックスとして使えなかったのですが、Python3.11ではこの制限が緩和され、Generic から継承できるようになりました。次のように、型変数を利用した型定義が

すべて表示 ...

2022-10-10 Python 3.11の新機能(その8) 型ヒントの新機能 - PEP-655 TypedDictで要素の省略可・不可を個別に設定できるようになった

Python 3.11で追加された PEP-655 TypedDictで個別の要素ごとに省略可・不可を指定可能にする では、typing.Requiredtyping.NotRequired が追加され、辞書の個別の要素ごとに省略可・不可を指定できるようになりました。

TypedDict は決まったキーを持つ辞書オブジェクトの型宣言で、次のように辞書のキーと値を宣言できます。

from typing import TypedDict

class Address(TypedDict):
    addr1: str
    addr2: str
    postal
すべて表示 ...

2022-10-10 Python 3.11の新機能(その7) 型ヒントの新機能 - PEP-681 データクラス変換

Python 3.7で導入された dataclass はかなり広く使われるようになり、Pythonの型チェッカも dataclass を認識してコーディングミスを防いでくれるようになっています。

ところで、Pythonのサードパーティライブラリには、似たようなインターフェースをもつクラスが多く存在します。たとえば DjangoのModel は次のようにデータベースのスキーマを定義します。

from django.db import models

class Person(models.Model):
    first_name = models.
すべて表示 ...

2022-10-09 Python 3.11の新機能(その6) 型ヒントの新機能 - PEP-673 Self型

Python 3.11では PEP-673 Self Type が実装され、 これも型ヒントではお待ちかねの新機能、定義中のクラスを示す型 typing.Self が追加されました。

従来のメソッド定義

これまでのPythonでは、クラスのメソッドなどを定義するとき、簡単にメソッドが属するクラスを取得する方法がありませんでした。このため、例えば自分自身を返り値とするメソッドのアノテーションを書くのは面倒で、Python 3.10までは typing.TypeVar を使って次のように記述していました。

from typing impor
すべて表示 ...

2022-10-05 Python 3.11の新機能(その5) PEP-646 可変長ジェネリックス

Python 3.11でも、型ヒント 関連で多くの機能が追加されました。まず、長年望まれていた新機能、 PEP-646 可変長ジェネリックス の概要を紹介します。

可変長ジェネリックスについて説明する前に、まず普通のジェネリックスを復習しましょう。

ジェネリックス

まず、引数 a を受け取り、要素が a だけのタプルを返す関数を考えてみましょう。

def to_tuple(a):
    return (a,)

to_tuple('100') を実行すると、結果としてタプル ('100',) が返ります。

この関数に型ヒントを指定してみましょう。引数 a

すべて表示 ...

1 2 3 4 5 ・・・

Python3 ドキュメント

ドキュメント日本語訳プロジェクト

Pythonドキュメント日本語訳プロジェクトは、 現在、Python 3.9 のドキュメントに対応するために活動中です。

非公式Pythonダウンロードリンク

Python.org本家のダウンロードページ はちょっと見にくいので、使いやすいダウンロード用ページを用意しました。

Amazon.co.jpアソシエイト: Python関連書籍
Copyright © 2001-2023 python.jp Privacy Policy python_japan
Amazon.co.jpアソシエイト
Amazonで他のPython書籍を検索