次のようなリストを作成しました。
items = [["one","two","three"], 1, ["one","two","three"], 2]
このリストの「1」などにアクセスするにはどうすればよいですか?
item[1]
が正しい項目です。リストのインデックスはゼロであることに注意してください。
one
(最初のサブリストのもの)を取得したい場合はitems[0][0]
、同様に、2番目のサブリストについても実行できますitems[2][0]
インデックスでアクセスできます:
>>> items = [["one","two","three"], 1, ["one","two","three"], 2]
>>> items[1]
1
または、リスト内のアイテムの位置を値で見つけたい場合は、次のindex()
メソッドを使用します。
>>> items.index(1)
1
>>> items.index(2)
3
list.index()
値のインデックスを取得するために使用できます。
>>> items = [["one","two","three"], 1, ["one","two","three"], 2]
>>> print items.index(1)
1
次に、それにアクセスするには:
>>> print items[1]
1
ただし、list.index()
最初のインスタンスのみを返します。複数のインデックスを取得するには、次を使用しますenumerate()
。
>>> [i for i, j in enumerate(items) if j == 1]
[1]
これはリスト全体をループし、それに沿って一種のカウントを与えます。たとえば、印刷i
とj
:
>>> for i, j in enumerate(items):
... print i, j
...
0 ['one', 'two', 'three']
1 1
2 ['one', 'two', 'three']
3 2
i
がインデックスでj
あり、値であると想定できます。