パラメータがどのタイプであると予想されるかをPyCharmにどのように伝えることができますか?

| | | |

コンストラクター、割り当て、メソッド呼び出しに関しては、PyCharm IDEはソースコードを分析し、各変数がどのタイプであるかを理解するのに非常に優れています。コード補完とパラメータ情報が適切であり、存在しない属性にアクセスしようとすると警告が表示されるため、適切な場合に気に入っています。

しかし、それが発生するとパラメータに対しては、何も知りません。コード補完ドロップダウンは、パラメータのタイプがわからないため、何も表示できません。コード分析では「警告を探すことはできません。

  class Person:def __init __(self、name、age):self.name = name self.age = age peasant = Person( "Dennis" 、37)#PyCharmは、「peasant」変数のタイプがPerson peasant.dig_filth()であることを認識しています。#警告を表示します-Personにはdig_filthメソッドクラスがありません。 「peasant」パラメータのタイプはpeasant.knock_over()#knock_overが存在しなくても警告なしKing()。repress(peasant)#Personインスタンスでメソッドを1回呼び出しても、PyCharmは# 「農民」パラメータは常に人でなければならないことを意味すると考えてください

これはある程度意味があります。他のコールサイトは、そのパラメータに対して何でも渡すことができます。しかし、私のメソッドがパラメータが pygame.Surface のようなタイプであることを期待している場合は、PyCharmにそれを何らかの方法で示して、Surfaceのすべてを表示できるようにしたいと思います。 のコード完了ドロップダウンの属性、間違ったメソッドを呼び出した場合の警告の強調表示など。

PyCharmにヒントを与えて、「psst」と言う方法はありますか? 、このパラメータはタイプX "であると想定されていますか? (または、おそらく、動的言語の精神では、「このパラメーターはXのように鳴くはずです」?私はそれで問題ありません。)


編集: CrazyCoderの答えは、以下のとおりです。簡単な要約が必要な私のような新参者のために、ここにあります:

  class King:def repress(self、peasant):"""時代遅れの帝国主義の教義にぶら下がって労働者を搾取します。私たちの社会の経済的および社会的違いを永続させます。@typepeasant:Person @param peasant:抑圧する人。 "" "peasant.knock_over()#警告を表示します。そして、多くの喜びがありました。  

関連する部分はdocstringの@typepeasant:Person行です。

ファイル>設定>Pythonにも移動する場合統合ツールを使用して「Docstringformat」を「Epytext」に設定すると、PyCharmの「表示」>「クイックドキュメントルックアップ」で、すべての@行をそのまま印刷するのではなく、パラメータ情報がきれいに印刷されます。