Python

Python | リストの使い方について

 

こんにちは、バーチャルSEのミコトです!

プログラミングの勉強をしていると『配列』とか『リスト』って耳にしますよね

両方とも複数個のデータの集合体を指しますが、同一の機能ではありません

 

配列やリストに含まれるデータ一つ一つのことを『要素』と呼びましょう。

配列(Array)の要素数は固定されていますが、アクセス速度は高速です。

リスト(List)の要素数は固定されていませんが、アクセス速度はちょい遅めです。

 

ミコト
ミコト
と、いうことはデータの個数(要素数)が確定している場合には配列を採用すると良さそうですね!
友人
友人
でも今回はリストの解説をするんでしょ?
ミコト
ミコト
そうなんです。実はプログラミング言語のPythonではリストがデフォルト機能なんですよね。

教科書パラパラ・・・

友人
友人
あ~、配列を使うとなると面倒な記述が必要なのね。

 

でもJavaというプログラミング言語ではリストではなく、
配列がデフォルトだったりするんですよね。

開発された時代の違いとも関連するんだろうけどややこしや~

 

と、言うことで!

今回はVizardを使いながらPythonにおけるリストの使い方をご紹介します!

統合開発環境Vizardを導入する方法

 

Pythonにおけるリストの使い方について

リストを宣言してprintしてみましょう!

さっそく次のコードを入力してみましょう。

作成するlistの要素数は3で、1つ目の要素は10、
2つ目の要素は50、3つ目の要素は100ですね。

# 変数を宣言し、リストを代入する。
list = [10, 50, 100]

# print文で変数の中身を表示する。
print list

 

実行結果は次の画像のようになりましたね。
listの中身である [10, 50, 100] が表示されました。

 

リスト内の要素の値を更新しましょう!

リストに格納された要素は、後から書き換えることができます。

 

ミコト
ミコト
ではさっそくリストの0番目の要素を更新してみましょう!
友人
友人
ぜ、0番目!?
ミコト
ミコト
あ、0番目の要素というのは一番左側の要素です。ちなみに配列の要素が先頭から何番目かカウントする数字を添字(インデックス:Index)と呼ぶんですよ。

配列の添字は『0始まり』です!初見だと違和感ありますね……

たとえば要素数3のlistの最後の要素は添字2になります。
添字3の要素を指定してしまうと範囲外ですよエラー(IndexError: list assignment index out of rangeが発生します。

 

添字に関しては実際に目で確認した方がスムーズに理解できると思います。

では、リストの0番目の要素を20という数字で上書きしてみましょう!!

# 変数を宣言し、リストを代入する。
list = [10, 50, 100]

# リスト内の要素の値を更新する。
list[0] = 20

# print文で変数の中身を表示する。
print list

 

listの0番目の要素をlist[0]と表現し、『=』を使って新しい値を代入することで、
既存のリストに含まれる要素の中身を更新できました。

 

実行すると更新後のlistの中身が表示されましたね。

ちゃんと値を更新できたみたいです!

 

リストに新たな要素を追加しましょう!

最後に、既存のリストへ新しい要素を追加してみましょう。

 

宣言済みのリストに対してappend関数を使って要素を追加します

# 変数を宣言し、リストを代入する。
list = [10, 50, 100]

# リストに新たなの要素を追加する。
list.append(20)

# print文で変数の中身を表示する。
print list

 

友人
友人
か、関数…ッ!?
ミコト
ミコト
あ~……。あまり深く考えず、リストには色んな便利機能がある!ということだけ覚えておけば大丈夫です。

 

とりあえず今回は実行結果の確認だけしてみましょう。

 

20という要素がlistの最後尾に追加されましたね!
listをprintすると [10, 50, 100, 20] の計4つの要素が表示されました。

6行目にlist.sort()という記述をするとlist内の要素を昇順で並べ替えてくれるんですよ~!
printすると [10, 20, 50, 100] と表示されるはずです😊

 



 

 

ミコト
ミコト
いや~何度復習しても面白いですね!
友人
友人
前回と比較すると新しい用語が多すぎる~。
ミコト
ミコト
確かに……。じゃあ最後に新登場の用語をまとめてお開きにしましょうか。(前回の記事と今回の記事が元々一緒だったなんて言えない)

 

  1. 配列・・・処理が高速だけど固定長
  2. リスト・・・ちょっと低速だけど可変長
  3. 要素・・・配列やリストを構成するデータの単位
  4. 添字(Index)・・・要素の順番を示す値。
  5. append関数・・・リストの最後尾に要素を追加する関数。
  6. 関数・・・様々な便利機能。メソッドと呼ぶ場合もアリ。

 

友人
友人
なんとなく理解できた!…かな。ありがとう!
でもミコトさぁ、配列とリストを今までに何度か言い間違えてたよね?
ミコト
ミコト
うっ・・・

 

Vizardの記事で配列とか言っていたらリストのことだと思ってくださいね。
(言い間違えないようにがんばります…!)

Twitterやってます! => Twitter | 神子田ミコト

動画の方針模索中です! => YouTube | 神子田ミコト

要望でも質問でも何でもどうぞ => マシュマロ | 神子田ミコト

COMMENT

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