AI研究所 - AI(人工知能)に脅かされないために、AI(人工知能)を作る側の人間になる -

HOME  >  Pythonのリストの基本!リストの書き方や使い方について知ろう

公開日:2020.07.20 

Pythonのリストの基本!リストの書き方や使い方について知ろう

プログラミング

人工知能のプログラミングにも使用されるプログラミング言語の「Python」には、リストと呼ばれる機能が備わっています。
このリスト機能は、簡単に説明すると、プログラム上で扱う様々な値を箱に入れるようにひとまとめにして管理するための機能です。
今回は、Pythonのリスト機能の基本的な知識や具体的な使用例などについて、初心者にもわかりやすい形で説明します。

そもそもPythonとは何か

前提知識として、Pythonというプログラミング言語がどのようなものかについて説明します。
Pythonは、少ない文量で簡単にコードを書けることによってプログラマの負担を軽減し、書かれたコードを人が読む際には読みやすさを重視するという思想のもと、1991年に開発されたプログラミング言語です。
プログラミングが簡単である一方で、多様な処理を実行できるという点で多くの支持を集め、人工知能や機械学習、Web開発、統計、分析、理工学など、幅広い分野で利用されています。
「Python」は、英語でニシキヘビを意味する単語であり、アイコンにはニシキヘビをあしらったデザインが使用されています。

先述したように、少ない文章でコードを書けることと、コードの読みやすさを両立するために、文法は極力単純化されています。
このため、Pythonというプログラミング言語の本体部分は必要最小限の機能のみを備えています。
その一方で「ライブラリ」と呼ばれる、用途に合わせた便利な機能が予め記述されているプログラムの集合体が豊富に存在します。
例えば、機械学習の分野で使用される「画像認識」について、その機能に特化したライブラリが用意されており、画像認識機能を備えたソフトウェアをPythonで作る際にはこのライブラリを使えば自分で画像認識を行うコードをゼロから書く必要がなくなるのです。
自分がどんなプログラムを書きたいかに合わせてライブラリを導入していくことで、機能が拡張されていくのもPythonの特徴です。

Pythonのリスト機能とは

Pythonのリスト機能とは

Pythonには、リストと呼ばれる機能が備わっています。
プログラミングにおける「リスト」とは、冒頭に説明したように複数の値をひとまとめにして管理するためのものです。
例として、スーパーの商品の売上を計算するためのプログラムを作ろうとした場合のことをイメージしてみましょう。
スーパーでは、様々な商品を取り扱っていますが、ひとつひとつの商品の売上を計算しようとすると、膨大な数の値についての足し算を行うため、一文が長くなってしまいます。
そこで、スーパーの商品のうち、野菜や肉類、卵などの商品を「生鮮食品」のリストに、ミネラルウォーターやお茶などの商品を「飲料」のリストに格納します。
すると、リストの値を足し算するプログラムを書くだけで合計を出すことができます。

このように、リストは一度に多くのデータを扱うことができるようになるという利点が存在します。
また、後からリストに要素を追加で格納したり、すでに格納している要素を削除することも可能です。
リストから特定の値を検索して抽出する、リストに格納された値が何種類あるかを数えることもできます。
ただし、値が増えたり減ったり、値が書き換わることもあるため、データベースのように何かの項目を鍵として値を検索するというような使い方ができない点には注意が必要です。

Pythonのリスト機能の具体的な使い方

Pythonのリストは、[]の中にカンマで区切った値を入れる形で記述します。
例えば、以下のような記述を行います。

listone = [1,2,3,4]

これは、「listone」というリストには「1」「2」「3」「4」という値がそれぞれ入っていることを表しています。
リストの中身を画面に出す場合は、printメソッドを使います。

listone = [1,2,3,4] print(listone)

上記のコードを実行すると、以下のように出力されます。

[1 , 2 , 3 , 4]

実際のプログラムでは、リストを予め初期化した上で、リストに入れる値を定義します。
初期化の方法は、[]の中に何も記入を行わずにリストを宣言します。
具体的には、以下のように記述します。

listone = []

すでに存在するリストに値を追加する際には、appendメソッドを使います。
例として、以下のコードを記述します。

listone = [1,2,3,4] listone.append(5)
print(listone)

これは、最初に「1」「2」「3」「4」の4つの値が格納されたリスト「listone」に、5つ目の値として「5」を追加した上でリストの中身を表示するという処理を行うコードです。
このコードを実行した結果は以下のようになります。

[1 , 2 , 3 , 4 , 5]

逆に、リストから特定の値を削除する場合はremoveメソッドを使用します。
例えば、先程5つの値を格納したlistoneから、「2」を削除する場合、以下のように記述します。

listone = [1,2,3,4] listone.append(5)
listone.remove(2)
print(listone)

このコードを記述して実行した結果、以下のような出力が行われます。

[1 , 3 , 4 , 5]

先程の出力結果から、2が消えたことがわかります。

さて、「Pythonのリスト機能とは」の項でリストの中身を検索することが可能と説明しましたが、具体的な方法としては演算子「in」を使用します。

listone = [1,2,3,4] print(3 in listone)
print(7 in listone)

上記のコードにおいて、2行目のprintメソッドでは「3」という値を、3行目のprintメソッドでは「7」という値をそれぞれ検索しています。
「3」はリスト内に存在するため「True」を、「7」はリスト内に存在しないため「False」をそれぞれ出力結果として返します。
ここにif文を加えることで、「リストに値がない場合は追加する」「リストに値があるならば特定の処理を行う」などといった条件分岐を仕込むことも可能です。

リストの中にいくつ要素が入っているかは、len関数を用います。
この関数の引数に、要素をカウントしたいリストを指定します。

listone = [1,2,3,4] Count = len(listone)
orint(Count)

「Count」という変数にlen関数で算出したlistoneの要素の数を格納し、printで表示させるコードです。
このコードを実行した結果、「4」という値を表示します。

なお、リストには数字だけでなく、文字列を入れることも可能です。
文字列としてリストに格納するには、””””で値を囲みます。

listone = [1,2,””hoge””,””fuga””]

このように、数字と文字列は混在した状態でリストに格納することができます。
printメソッドでlistoneを出力すると、以下の結果が返ってきます。

[1 , 2 , ‘hoge’ , ‘fuga’]

さらにリストの応用的な使い方として、既存のリストのデータをもとに新しいリストを作成することが可能です。

listone = [1,2,3,4] listtwo = [i+1 for i in listone] print(listtwo)

listoneの値に1を足した新たなリスト「listtwo」を出力するコードです。
listtwoの中身は、以下の出力結果のとおりとなります。

[2 , 3 , 4 , 5]

このコードで使われているのは、「リスト内包表記」と呼ばれる表記法です。
新たなリストを宣言する際に、古いリストの要素とその要素に対する処理を記述することで、新しいリストにその結果が格納されます。
このリスト内包表記を駆使することで、コードの内容を大幅に短縮することが可能なので、上手く活用しましょう。

Pythonのリストを使いこなしてデータ分析に活用しよう

Pythonのリストを使いこなしてデータ分析に活用しよう

Pythonのリスト機能は、使いこなすことで「いくつ要素が存在し、その中にいくつ条件に合致する値が存在するか」といったデータ分析に活用することができます。
また、「リスト内に特定の値があれば呼び出す、ない場合は追加する」という動きを活かせば、膨大なデータをプログラム内に蓄積した上で必要なデータを呼び出すことも可能です。
Pythonのリスト機能を使いこなして、データ分析に役立てましょう。


参考になったら「いいね!」と「シェア」をお願いします!!

このエントリーをはてなブックマークに追加
AI(人工知能)セミナー開催中