入門者必見!Pythonのリスト(配列)を使いこなすための5つのステップ

Pythonでリスト(配列)の使い方の基本が知りたい
リストと配列って何が違うの?
リストの追加や削除、検索などを行いたい

リスト(配列)を使えば、複数の値をまとめて管理することができます。しかし、慣れないと使い方がわからなかったり、追加や検索などちょっとした応用的な使い方がわからない・・・といったことがおきてしまいますね。

そのような方に向けてこの記事では、リスト(配列)の概要や実際の使い方についてわかりやすく解説していきます。

この記事はこんな方のために書きました

  • リスト(配列)の基本が知りたい方
  • リストと配列の違いが知りたい方
  • リスト(配列)の基本を抑えて置きたい方

リスト(配列)について、わかりやすく解説していますので、ぜひ参考にしてください!

>>> 今すぐ「リストの使い方」を知りたい方はこちら

Pythonの配列とは

皆さんはPythonにて配列を使った事がありますか?そもそも、配列が何か知っていますか? 配列とは、同じ型の要素を一列に並べたデータ型の事です。


配列のイメージ

このようにデータのかたまりのようなものが配列で、一度に多くの連続したデータを扱うことができます。各要素には0から順番にインデックスという数字が割り振られています。

リストと配列の違いとは

前項で紹介した配列という言葉は、実はPythonには存在しません。他の言語で「配列(array)」と呼ぶものを、Pythonではリスト(list)と呼びます。

Pythonではリストが配列の役割を担っています。配列との主な違いは、以下となります。

  • 他の言語のように宣言時に型を指定する必要がない
  • 構成する各要素の型が違っていても成り立つ

以降、Pythonにおける配列をリストと呼びます。

リストの使い方5つのステップ

リストの基本的な使い方

では、最初にリストの基本的な操作方法をご紹介します。まずは、リストを作成してみましょう。リストとは、[ ]の中にカンマで区切られた要素で構成されたものです。以下のコードをご覧ください。

上記コードでは、mylistというリストを宣言してint型の要素を追加しました。リストの初期化を行うには以下のようにコードを書きます。

ご覧いただけるように、[ ] の中身を空で宣言するとリストが初期化されます。リストの要素を一つずつprint関数などで表示したい時は、for文を使用すると便利です。

以下のコードをご覧ください

実行結果:

このようにリストの要素が順番に出力されていますね。for分でリストを使用するときは「for 変数 in 配列」のように記述します。for文の詳しい使用方法については以下のリンクを参照してください。

リスト内包表記とは

リスト内包表記とは、既存のリストをベースに新しいリストを作る際に便利な記法です。

for文などを使用した長く読みづらいコードを簡潔にまとめることが出来ます。また、実行速度がリスト内包表記を使わない場合と比べて速くなる場合もあります。では、基本的な使い方をご紹介したいと思います。

以下のコードをご覧ください。

出力結果は以下の通りです。

上記コードでは、baseというリストを元にnewという新たなリストを作成してみました。newの要素は、baseの各要素を二倍にしたものです。ご覧いただけるように、newの宣言の際 [ ] 括弧の中にfor文のようなものを当てはめています。

これがリスト内包表記というものです。括弧のなかに通常のforループと同じ文(for 要素 in リスト)を書き、その手前には新しいリストの各要素の値を記入します。このサンプルコードの場合、i*2が各要素の値です。リスト内包表記を活用出来るととても便利なので、ぜひ覚えておきましょう。

要素の追加と削除

既存のリストに新たな要素を追加するには、以下のようにコードを書きます。

出力結果は以下の通りです。

上記コードでは、appendメソッドを使用してmylistに要素を追加しました。appendメソッドは引数に追加したい要素の値を要します。ご覧いただけるように、きちんと新たな要素がmylistに追加されましたね。

既存のリストからある特定の要素を削除するには、いくつかの方法があります。一番よく使われているのは、removeメソッドです。

以下のコードをご覧ください。

出力結果は以下の通りです。

上記コードでは、removeメソッドを使用し要素を一つ削除しました。removeメソッドは引数に削除したい要素の値を指定します。removeメソッドの他にも、popメソッドを使用することが出来ます。popメソッドは指定したインデックスの要素を削除します。

値ではなくリスト内の特定のインデックスを削除したい場合に活躍します。以下のコードをご覧ください。

上記コードでは、popメソッドを使用しインデックス4番目の要素を削除しました。ご覧いただけるように、popメソッド作動後のリストを表示させると、正常に値5が削除されたことが確認出来ます。

また、popメソッドは戻り値として削除した要素の値を返します。deleted変数にpopメソッドの戻り値を格納させた後それをprint関数で表示させると、削除された要素の値5が出力されました。

要素の検索

リストにある要素が入っているかどうかを調べるときには、in演算子を使うことができます。以下のコードをご覧ください。

出力結果は以下の通りです。

上記コードでは、in演算子を使用し、値3の要素と値6の要素が存在するかを確かめてみました。3はmylistに含まれているので、Trueと表示されました。6はmylistに含まれていないので、Falseと表示されました。

リストのサイズを取得する

リストのサイズ(要素数)を取得するにはlen()を使用します。lenの引数にはリストを指定します。以下のコードをご覧ください。

出力結果は以下のとおりです。

このようにlen()を使用すれば、リストのサイズを簡単に取得できることがわかりますね! なお、len()はリストが空の場合は0を返します。そのため、リストに要素が入っているか確認したいときでもlen()を使用すると便利です!

リストの使い方まとめ

ここではリストの使い方について簡単におさらいしておきましょう。リストは以下のように変数を指定して角括弧[]の中に、値を記述します。

リストの書式:

実際にリストを定義して値が格納されているか、確認してみましょう。

サンプルプログラム1(リストの定義):

このように定義したリストの内容を確認できることがわかりますね!また、リストの要素を1つずつ表示する場合は、for文を使用すると便利です。

サンプルプログラム2(リストの要素を順番に表示する):

このように「for 変数 in 配列」を指定すれば、変数に配列の要素ごとに値が格納されます。

まとめ

今回はPythonにおける基本的なリストの使い方と、その活用法について以下の内容で解説しました。

  • リストと配列の違いとは
  • リストの基本的な使い方
  • リストの内包表記とは
  • 要素の追加と削除
  • 要素の検索
  • 配列の使い方まとめ

リストは変数や繰り返し処理同様最も基本的な処理となりますので、使い方についてはしっかりと理解しておきましょう。

Pythonカリキュラム無料公開中!

この記事はPython入門完全攻略ガイド【基礎学習/アプリ開発/仕事獲得】の一部になります。このカリキュラムは、プログラミング入門者が、基礎学習からアプリ開発、さらには仕事獲得まで体系的に学べる内容となっています。

Python学習に必要な情報を一つにまとめていますので効率よくPythonを学ぶことが出来ます。この機会に是非活用していただければと思います。

Python入門完全攻略ガイド【基礎学習/アプリ開発/仕事獲得】
更新日 : 2019年6月26日

Pythonを最短で習得したい方へ

元々ITリテラシーの高い方やプログラムの学び方がわかっている方であれば、この記事通りに進めていけば、Pythonを独学で習得することができるでしょう。

ただし、実際の学習期間中はつまづいている時間がほとんどです。

「なかなかやり遂げられ無い、挫折してしまった」
「時間が足りない」
「情報が少なくどう調べればいいかわからない」
「エラーを解決することができない」

このような悩みを抱えている方も少なく無いと思います。

  • もう挫折したくない
  • 本業と両立しながら、好きな時間で自分のペースで勉強を続けていきたい
  • 自分だけのカリキュラムで効率的に勉強したい
そんな方はお気軽に侍エンジニア塾までご相談ください。

お一人お一人に専属のインストラクターがつくので、通常のスクールでは難しい、AI(人工知能)や機械学習、IoTについて学習することできます。

まずは『無料体験レッスン』で、弊社のコンサルタントと一緒にあなた専用の学習方やカリキュラムを考えてみませんか?

Pythonならではの学習方法や、現役Pythonエンジニアから貴重なアドバイスを受けることができます。

詳しくは下の画像をクリックして弊社サービス内容をご確認ください。

cta_bannar-ai2
LINEで送る
Pocket

書いた人

Kotono

Kotono

イタリア在住15年目の22歳です。イタリアの大学で情報科学&応用数学を学んでいます。主にJavaScriptやPythonについての記事を書いたりしています。

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説