3

リストがあるとし['a', 'b', 'c', 'd']ます。Python には、最初の項目から始まるすべての連続したサブリスト(つまり、サブシーケンス)を簡単に作成するためのビルトインまたはメソッドはありますか?:

['a']
['a', 'b']
['a', 'b', 'c']
['a', 'b', 'c', 'd']

パイソンで?

['a' ,'c']['a', 'd']['b']['c']または_['d']

4

4 に答える 4

5

出力例 (接頭辞) と一致させるには、次を使用できます。

prefixes = [your_list[:end] for end in xrange(1, len(your_list) + 1)]
于 2013-10-16T15:34:23.153 に答える
4

これは、単純なリスト内包表記で行うことができます。

>>> l = ['a', 'b', 'c', 'd']
>>> 
>>> [l[:i+1] for i in range(len(l))]
[['a'], ['a', 'b'], ['a', 'b', 'c'], ['a', 'b', 'c', 'd']]

以下も参照してください。range()

Python 2.x を使用している場合は、xrange()代わりに使用してください。

于 2013-10-16T15:33:40.553 に答える