型の手がかりがないと、PyCharmは候補を出してくれません。
リスト型とわかると、リストに関するメソッドなどを候補として出してくれます。
しかし、これでもリストに入っている要素の型まではわからないため、以下の場合、PyCharmは候補を出してくれません。
しかし""":type: <type>"""を使って、型を明示する文を入れてあげると、この場合はFaceクラスのフィールドが候補として出されます。
ちなみに関数を普通に書くとPyCharmは型を適宜推論してくれますが・・・
:rtype :<type>を使って、関数の戻り値を型指定することもできます。
返り値だけでなく引数の型を指定することもできます。
指定しないと何も候補を出してくれませんが・・・
・・・:type x: <type>で指定すると候補を出してくれます。ちなみに関数を書いて改行したあとに"""と打って改行するとdocstrings形式の注釈を入れるひな形をPyCharmが自動で入力してくれます。
| 表記 | 内容 |
|---|---|
| Foo | Fooクラス |
| x.y.Bar | x.yモジュールのBarクラス |
| Foo | Bar | Foo もしくは Bar |
| (Foo, Bar) | FooとBarのタプル |
| list[Foo] | Fooを要素とするリスト |
| dict[Foo, Bar] | FooからBarへの辞書 |
| T | ジェネリック型 (T-Zはジェネリック型の予約語) |
| T <= Foo | Fooを継承したクラス |
| list[T <= Foo] | リストの要素として、Fooを継承したタイプしか受け付けない |
| Foo[T] | Tを引数にとるFoo |
| (Foo, Bar) -> Baz | Bazを返す、FooとBarの関数 |
| list[dict[str, datetime]] | 文字列からdatetimeへの辞書、のリスト(要素の入れ子) |
ブログやってます:Weed software







