3

これが私の最初の質問です...

以下のような名前付きのタプルがある場合

 FDResult = namedtuple('FDResult', ['S', 'Payoff', 'V'])

そして私は以下のようなnamedtupleのコレクションを持つ配列を持っています

 bla = [FDResult(S=100.0, Payoff=0.0, V=0.4693541525097441),
 FDResult(S=102.0, Payoff=1.0, V=0.4944046100897207),
 FDResult(S=104.0, Payoff=1.0, V=0.5188897967596792),
 FDResult(S=106.0, Payoff=1.0, V=0.5427339609362274),
 FDResult(S=108.0, Payoff=1.0, V=0.5658731041633024)]

Sの配列スライスを取得するにはどうすればよいですか?

 bla[:].S #I want to get [100.0,102.0,104.0,...] as a result

これはエラーでは機能しません:AttributeError:'list'オブジェクトには属性'S'がありません...

任意の提案をいただければ幸いです。ありがとう。

4

1 に答える 1

6

たとえば、リスト内包表記が必要だと思います

[x.S for x in bla[:]]

もちろん、リストのより一般的なスライスをそこに置き換えることができますbla[1:-1:2]

于 2013-01-15T02:20:17.180 に答える