2
私は、関数インタフェース/ "契約"を実施するための既存のPythonライブラリ/技術があるのだろうかと思います。 ABCのようなものですが、機能のためです。関数インタフェース用のPythonライブラリ?
など。作られたアップ構文と例:
@implements(i_state_updater)
def my_update(position, state, forces):
...
return new_position, new_state
@declare_interface
def i_state_updater(position, state, forces):
"""
:param position: ...
:returns: ....
"""
私は引数としてこの関数を渡すとき、私はそれを確認できるように、例えば
def compute_trajectory(update_func, n_steps, initial_state):
"""
:param update_func: An i_state_updater
...
"""
assert update_func.implements(i_state_updater)
Pythonの既存のABCモジュールこのようなことをしますが、クラスのためだけです。そこに機能のための同等のですか?
も見ます!それはまさに私が探していたものです - 何とか私の検索はこれまでそれを見つけていませんでした。ありがとう。 – Peter