Python でリストのリストを平らにする(あるいは連結する)なら、一番よいのは itertools.chain をつかう方法。
import itertoolsflatten = itertools.chain.from_iterable
たとえばこんな風に使える:
flatten は(二重の)内包表記をつかって次のようにも定義できる:
flatten = lambda vss: (v for vs in vss for v in vs)
この lambda 式に
型の定義(Python)
Python は Typing モジュールを利用して変数や関数の型注釈ができる。
次のような関数定義があれば、整数型の引数をひとつ取って整数を返すことがわかる。
def myFunction(v: int) -> int:
複雑な構造を持つ戻り値やたくさんの引数があるとき、型の明示はとくに理解の助けになる(ので積極的に使いたい)。
新しい型の定義
新しい型は、型定義を変数に代入することで実現する。
from typing import List, Dict, Typ