15

@paramPython には、やなどの docstring 用のタグがいくつかあります@return。たとえば、次のとおりです。

def my_method(a_param):
    ''' @param a_param: Description of this param
        @return: The return value of the method
    '''
    return int(a_param) * (other or 1)

ジェネレーターのドキュメント化には何を使用できますか? 特に次のyieldようなキーワード:

def my_generator(from=0):
    ''' @param from: The initial value
        @yield: A lot of values
    '''
    yield a_value

ここで使用できることは理解してい@return an iteratorますが、ジェネレーターも値を返すことができるため、それが正しいかどうかはわかりません。

ありがとう。

4

1 に答える 1

9

関数は実際にはorメソッド@returnを使用して反復子オブジェクトを返すため、この場合は適切であると考えます。ステートメントの有効性は、それが実際に何かを返すことを意味します。ステートメントを使用せずに、単にそうするだけです。nextsendx = my_generator(from=3)my_generatorreturn

ステートメントまたは式を含む関数は、yield予測可能なプロパティを持つオブジェクトを返すファクトリであるため、いくつかの点でクラスのように動作します。ただし、ジェネレーター関数自体はインスタンス メソッドとして宣言および呼び出すことができるため、クラスとは考えていません。

于 2011-10-04T19:29:42.550 に答える