Python 3.10では、PEP 604の一部としてUnion型が導入されました。これにより、パラメータ、変数、または戻り値を複数のオプションのいずれかとして型付けすることが可能になりました。3.10より前では、typing.Unionが使用されていましたが、Python 3.10以降では、|演算子を使用してunion操作を実行できます。

また、PythonのtypingライブラリのListは、リストとその要素の型を明示的に表現するために使用されます。Listはジェネリック型で、リストに格納される要素の型をパラメータとして持ちます。

from typing import List

def double_elements(numbers: List[int]) -> List[int]:
    return [x * 2 for x in numbers]

上記のdouble_elements関数は、整数のリストnumbersを引数に取り、その各要素を2倍にした新たなリストを返します。引数と戻り値の型としてList[int]を指定することで、この関数が整数のリストを扱うことを明示しています。

しかし、Python 3.10では、|演算子を使用して、複数の型を持つリストを表現することが可能になりました。これにより、typingライブラリのUnionOptionalクラスのインポートが不要になり、コードがよりシンプルになりました。

value: int|str = 100

上記の例では、valueint型またはstr型のいずれかを持つことができます。

これらの新機能は、Pythonの型アノテーションがより使いやすくなる一方で、コードの可読性を向上させ、開発効率を向上させることが期待されています。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です