Python - 文法 - 配列・リスト(list) - 基本②


 クラウディア


1. 概要
2. 逆順に並べ替え
3. 追加
4. 要素数
5. 全件処理
6. 存在有無
7. インデックスを取得

1. 概要

 話の順番が、無茶苦茶なのは、このサイトの特徴です。  本ページは、下記のサイトを参考にさせていただきました。
Python でリストのサイズ(要素数)を取得」
「Pythonでリスト(配列)の要素を削除するclear, pop, remove, del」
「Python のリストの要素のインデックス(何番目か)を取得」
「Python | リストに指定した値と同じ要素が含まれているか確認する

2. 逆順に並べ替え

 これも、この手のスクリプト言語は、同じ。  「reverse」を使用します。

l1 = [ 'one',  'two',  'thrree',  'four', 'five']

print(l1)
print(l1.reverse())
print(l1)

print(reversed(l1))

l2 = reversed(l1)
print(l2)

l2 = list(reversed(l1))
print(l2)
 上記のソースを実行すると、下記の結果が得られます。

['one', 'two', 'thrree', 'four', 'five']
None
['five', 'four', 'thrree', 'two', 'one']
<list_reverseiterator object at 0x800d4d900>
<list_reverseiterator object at 0x800d4d900>
['one', 'two', 'thrree', 'four', 'five']
 4行目、「reverse」を呼んだら、その結果が返ると思ったら、さにあらず。  「reverse」をコールすることで、リストの中身が更新されるようです。  9行目以降は、イテレータなるものが出現するので、今は説明できない・・・(2020年6月12日)。

3. 追加

 要素を末尾に追加するには、「append」を使用します。

l1 = [ 'one',  'two',  'thrree',  'four' ]

print(l1)

l1.append('five')
print(l1)
 上記のソースを実行すると、下記の結果が得られます。

['one', 'two', 'thrree', 'four']
['one', 'two', 'thrree', 'four', 'five']
 辞書の追加が「add」に対して、リストは「append」。  英語に堪能でないので、「add」と「append」は、何が違うのだろう。

4. 要素数

 要素数は、「len」(組み込み関数らしい)で取得できます。

l1 = [ 'one',  'two',  'three',  'four' ]

print(len(l1))

l1.append('five')
print(len(l1))
 上記のソースを実行すると、下記の結果が得られます。

4
5

5. 全件処理

 いかにもありがちな処理ですが、「for」を使用して、リストを全件処理できます。

list = [ 'hoge', 'fuga', 'piyo' ]

for item in list:
  print(item)
 というソースを書いて、実行すれば、下記の結果が得られます

hoge
fuga
piyo

6. 存在有無

 「in」というのを利用して、存在の有無を確認できます。

list = [ 'A', 'B', 'C' ]

search = 'B'

if search in list:
  print(search, 'は list 内に存在する')
else:
  print(search, 'は list 内に存在しない')

search = 'D'

if search in list:
  print(search, 'は list 内に存在する')
else:
  print(search, 'は list 内に存在しない')
 というソースを実行すると、下記の結果が得られます

B は list 内に存在する
D は list 内に存在しない

7. インデックスを取得


result = 配列またはリスト.index(要素)
 で、「result」に配列またはリストのインデックス(0 はじまり)を取得することができます。  参考サイトでは、数値または数字の配列を例題にしていますが、要素が文字列であってもオブジェクトであっても、指定の要素があれば、インデックスを取得できます。  含まれない要素を指定すると、「ValueError」というエラーになるようなので、注意が必要です。

earthcar(アースカー)
薬屋の独り言