タイプチェックにpythonプロジェクトで mypy を使用しています。プロジェクト設定ファイルの読み取りと書き込みにもPyYAMLを使用しています。残念なことに、 PyYAMLドキュメントからの推奨されるインポートメカニズム これは、ネイティブライブラリをインポートしようとするtry/except句で偽のエラーを生成します。
from yaml import load, dump
try:
from yaml import CLoader as Loader, CDumper as Dumper
except ImportError:
from yaml import Loader, Dumper
私のシステムにはCLoader
とCDumper
が存在しないため、エラーerror: Module 'yaml' has no attribute 'CLoader'
およびerror: Module 'yaml' has no attribute 'CDumper'
。
Mypyにこの行のエラーを無視させる方法はありますか? mypyにその行をスキップさせるために、次のようなことができることを望んでいました。
from yaml import load, dump
try:
from yaml import CLoader as Loader, CDumper as Dumper # nomypy
except ImportError:
from yaml import Loader, Dumper
これを行うには、 0.57 の時点で# type: ignore
を使用します( #500、特定の行を無視する ):