-
Python のメソッド内での独自のクラス型ヒント
Pythonの型ヒントは、PyCharmを使う上で非常に便利です。しかし、クラスのメソッドでそのクラス独自の型を使用しようとしたときに、奇妙な動作に遭遇したことがあります。
例えば:
クラス Foo:
def __init__(self, id):
self.id = id
を渡すdef __eq__(self, other):
return self.id == other.id
ここで、other.と入力してもプロパティidが自動的に提示されません。__eq__を次のように定義することでこの問題を解決したいと考えていました。def __eq__(self, other: Foo):
return self.id == other.id
しかし、これはNameError: name 'Foo' is not defined というエラーを引き起こします。しかし、メソッド内で型を使用すると、other. を書いた後にidが渡されます。def __eq__(self, other):
other: Foo
return self.id == other.id
質問なのですが、メソッド内では可能なのに、なぜクラス独自の型をパラメータの型ヒントに使用できないのでしょうか?
Python https://bit.ly/3iZ3cZD
Pythonのメソッド内でのクラス型ヒント - TechRepublic

Pythonのメソッド内でのクラス型ヒント - TechRepublic
Related News

ビル・ゲイツの最大の成功と失敗 - TechRepublic
btzgrp
0

再生品の RAM - TechRepublic
btzgrp
0




こんにちは - TechRepublic
btzgrp
0




注目のアーカイブ - TechRepublic
btzgrp
0


