Pythonのリストのスライスと多次元リストの要素の取り出し方法

lecture

早速ですが、次のコードの結果を考えてみましょう。

s = 'Python'
s[::-1][::-3]

結果は ‘Ph’ となります。

リストや文字列から特定の要素を取り出す場合は[]を使ってインデックスを指定します。
通常は1次元のリストの場合は[]を一つだけ使用して特定の要素を指定したり、スライスをしたりします。
けれども、[]は一つだけだと決まっていません。
上の問題のように複数並べて置くことができます。
この例では次のことが行われています。

  1. 最初の[::-1]でsの並びを逆順に並べ替えます
  2. 次の[::-3]で逆順になったリストの最初から最後までの要素を3ステップで逆から取得します
  3. 結果’Ph’となります
スポンサーリンク

多次元リストの要素の取り出し方

多次元リストの要素の取り出し方も同じ発想です。

l = [['A', 'B'], ['C', 'D'], ['E', 'F']]
l[1][0]

結果は ‘C’ が取り出されます。
この場合は、まず l[1] で [‘C’, ‘D’] が取り出され、次に [0] で [‘C’, ‘D’] の ‘C’ が取り出される訳です。

仕組みがわかると多次元リストも怖くないですね。

タイトルとURLをコピーしました