ロゴ

プログラミング初心者がアプリ開発を目指すブログ

【Python入門】Pythonリストの操作 – Python初心者勉強記004

今回はPythonのリストの操作を学んでいきます。

前回述べた通り、
Pythonのリストは
・数字、文字、辞書、関数などどんなオブジェクトでも格納することができる
・数字と文字のように異なるオブジェクトを格納することができる
・事前にリストの長さを指定する必要がない
と非情に柔軟です。

また、リストの操作もとても簡単です。
1つづつ確認していきましょう。

リストの読み込み操作

まず、リストの値にアクセスするには、
list名[インデックス]
とします。Java等と同じくインデックスは0から始まるので注意しましょう。


>>> a = [3,5,4,8]
>>> a[0]
3
>>> a[4]
Traceback (most recent call last):
  File "", line 1, in 
IndexError: list index out of range  #a[4]はないのでエラーが出る!

指定した要素の位置(インデックス)を知りたいときは
.index(検索したい要素,検索開始位置,検索終了位置)
とすると
検索範囲内を左端から検索し、最初に一致した要素のインデックスを返します。
実際やってみましょう。


>>> a=[3,5,6,3,7,8]
>>> a.index(3) #全範囲から3を検索
0
>>> a.index(3,1,4) #index1~4内で3を検索
3

指定要素の個数を数えるときは.countを使います。
また、リストに指定要素が含まれているかどうかを調べるときは
検索要素 in リストを使います。
一気に見て行きましょう。


>>> a=[3,5,6,3,7,8]
>>> a.count(3)
2
>>> a.count(9)
0
>>> 3 in a
True
>>> 9 in a
False

リストの長さを調べるときは、len(リスト)を使用します。


>>> a=[3,5,6,3,7,8]
>>> len(a)
6

次は、リスト内の最大・最小を調べましょう。
max(リスト,key=比較用関数)
min(リスト,key=比較用関数)
keyには例えばlen等をいれます。(省略可能)


>>> a=[3,5,6,3,7,8]
>>> min(a)
3
>>> max(a)
8
>>> max(['a','s']) #文字列の比較
's'
>>> min(['aab','aba']) #左から順番に比較される
'aab'
>>> min(['aa','aba'],key=len) #key=lenとすることにより長さを比較する
'aa'

リスト内を足し合わせるにはsumを使います。


>>> a=[3,5,6,3,7,8]
>>> sum(a)
32

any関数はリストのいずれかがTrueであれば、Trueを返します。
all関数はリストの全要素がTrueだった場合にTrueを返します。

リストの要素の更新

要素を更新するときは
a[0]=1
みたいな感じにします。(他の言語と一緒です。)

a[2:4]=リスト
のようにするとインデックス2~4を置き換えることができます。


>>> a=[3,5,6,3,7,8]
>>> a[2:4]=[4,9,6,1]#右辺の方が要素数が多い
>>> a
[3, 5, 4, 9, 6, 1, 7, 8]#要素数が変わる!

リストに一つの要素を加えるには、
.appnd(要素)
リストを拡張するには
.extend(リスト)
を使います。
2つの挙動の違いを見て行きましょう。


>>> a=[3,5,6,3,7,8]
>>> a.append([1,2])
>>> a
[3, 5, 6, 3, 7, 8, [1, 2]]
>>> a=[3,5,6,3,7,8]
>>> a.extend([1,2])
>>> a
[3, 5, 6, 3, 7, 8, 1, 2]

指定位置に要素を追加するには
.insert(2,’a’)
とします。


>>> a=[3,5,6,3,7,8]
>>> a.insert(2,'a')
>>> a
[3, 5, 'a', 6, 3, 7, 8]

とりあえず、今回はここまで
その他の操作はまた次回見て行きましょう。

Python入門講座の次の記事はこちら => 【Python入門】Pythonリストの操作(続き) – Python初心者勉強記005

スポンサード リンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA