• WebCampPro_インタビュー
    未経験でも寿司職人からWebデザイナーになった!ホスピタリティでスクールを支える宮脇トレーナー
    2017.05.26
  • WebCampPro_インタビュー
    未経験から上京し、エンジニアとしてチームラボグループに転職!【WebCampPro卒業生インタビュー】
    2018.03.10
  • WebCampPro_インタビュー
    自分で稼ぐ力をつけるため、新卒5年目の営業マンがエンジニアに転職!【WebCampPro転職者インタビュー】
    2018.02.02
  • WebCamp_インタビュー
    時間や場所にとらわれず自由に働くために必要なスキルとは?【WebCamp卒業生インタビュー】
    2018.01.26
  • WebCamp_インタビュー
    【WebCamp卒業生インタビュー】1ヶ月でRubyをゼロから学び、Webエンジニアとして転職!
    2018.01.15
  • WebCamp_インタビュー
    「1カ月頑張ればこの先が見えてくる」地元メディアを立ち上げたママさん
    2017.07.20
  • WebCamp_インタビュー
    【卒業生インタビュー】台湾で月間100万UUの訪日旅行メディアを手掛けるCEOが、プログラミングを学んで得たものとは?
    2018.01.15
  • WebCamp_インタビュー
    「自信の持てるスキルを得たい!」内定辞退した女子大生がプログラミングを学習したワケ。
    2018.04.28
  • WebCamp_インタビュー
    “未経験”でもたった1ヶ月で営業からエンジニアとして転職!『WebCamp』受講者インタビュー
    2017.10.04
  • WebCamp_インタビュー
    【WebCamp受講生インタビュー】起業準備中にCEOが気がついたプログラミングスキルの重要性とは?
    2017.12.25
  • WebCampPro_インタビュー
    未経験31歳からエンジニア転職を実現【実際に聞いてみた】
    2017.04.01

◆当サイトで人気のプログラミング教室のおすすめランキングはこちら!
プログラミングは独学では非効率で、時間を無駄にするリスクがあります。効率的なカリキュラムで学べるスクールを受講しましょう。

WEBCAMP【マンツーマンサポート】1ヶ月短期集中でプログラミングを学ぶスクール
1ヶ月通い放題・メンター常駐の教室環境でプログラミングを学びたい方!
TechAcademyオンラインで開講しているプログラミングスクール
オンラインでどこでも学べる!/教室に行くのが忙しい人でも安心!
Tech Camp教養としてのITスキルを学べるスクール
Webデザイン/AI(人工知能)/IOS/Androidアプリ制作/VRを学びたい方!
WEBCAMP PRO転職保証付き!エンジニアとして転職したい人におすすめ!
未経験からプロのエンジニアへ3ヶ月で転職する為のスクールです!

11月11日、18日開催決定!2日間で人工知能(AI)を学習するPythonコースが開講

今回、当社(WebCamp)では、現役フリーランス・エンジニアとしてPythonの最前線で活動している講師をお招きし、2日間でPythonの基本から機械学習の基礎まで学ぶ短期集中型のコースを開講します。
Pythonの基礎プログラミング能力を身につけたい方機械学習やAIに興味はあるが学習できていない方現役Pythonエンジニアからリアルな話を聞きたい方
上記にあてはまる方は、ぜひご参加ください!

多くのプログラミング言語で登場する配列ですが、Pythonはプログラミング言語の中でもこの配列に特徴があります。

今回はPythonで使用する配列のリスト配列について、基本から応用テクニックまで徹底解説していきます。

配列について

まずは配列について、簡単にご説明します。

配列は変数と違い複数の要素を格納することが出来ます。

配列を使うことで、プログラミングをする際のソースコードを簡略化できたり、メンテナンス性能を上げられたりと、大きなメリットがあります。

配列タプルについて

リストの解説に入る前に、混同されやすいPython配列のタプルについて、解説しておきます。

タプルはリスト同様にPython配列の1種で、複数の要素を格納することが出来ます。

タプルとリストの最大の違いは、可変性にあります。

リストは要素を追加や削除を宣言後にも自由に変更することが出来るのに対して、タプルは初期化時に追加した要素から追加や削除を行うことが出来ません。

リストを使用するメリット

リスト配列を使用するメリットは、タプルとの違いでも記述した様に要素を自由に追加・削除することが出来る可変性にあります。

システムの仕様にもよりますが、配列を使用する場合は中の要素を変更することが少なくありません。

その為、Pythonの配列はリストで実装することが非常に多いです。

リストを使用するデメリット

リスト配列を使用するデメリットは、処理速度です。

タプルに比べて可変性がある分処理速度はリストの方が遅くなってしまいます。

リストの方が便利ですが、仕様段階で要素の内容が変わらない場合は、タプルを使用する方がメリットがあります。

リストの要素追加について

それではまずリストの宣言と初期化に合わせて、要素を実際に追加してく方法から解説していきます。

リストについて、初めて学習する方は要素追加の記述方法だけでなく、リスト配列に必要な初期化も一緒に参考にして頂ければと思います。

appendでリスト要素追加記述方法

リストに要素を1つずつ追加する場合は、appendメソッドを使用します。

appendメソッドの記述方法は下記になります。

#リストの初期化
リスト配列名 = [要素,要素,・・・・・] 
#appendメソッドによる要素追加
リスト配列名.append(要素)

リストを最初に作る際には、宣言または初期化が必要になります。

宣言時点で追加する要素が決まっている場合は、初期化時点で要素を指定することで使用することが出来ます。

初期化後に要素を追加する必要が出てきた場合には、要素追加の記述が必要になります。

appendメソッドでリスト要素追加使用例

appendメソッドでリスト配列に要素を追加する使用例は、下記になります。


#リスト配列を準備

list_sample = ["a","b","c"]

#append関数を使用して要素を追加

list_sample.append("d")

##要素追加確認用の出力

print(list_sample)

#実行結果

['a', 'b', 'c', 'd']

実行結果からappend関数でリスト配列に要素が追加できていることが、確認できます。

リストの連結について

リスト配列はリスト配列を連結させて、1つのリスト配列にすることが出来ます。

リストの連結記述方法について

リスト配列の連結記述方法は、下記になります。


#リストの連結

リスト配列名 = リスト配列名 + ([要素,要素,・・・・・・])
または
リスト配列名 = リスト配列名 + リスト配列名

リスト配列の連結は既に作成されているリスト配列名に+で要素を追加して、新しいリスト配列名にすることで連結することが可能です。

リストの連結使用例

リスト配列に連結の記述方法だけでは、イメージがつきにくい方も多い為、実際にリスト配列の連結使用例をご紹介します。


#リスト配列の初期化

list_sample = [1,2,3,4,5]
list_sample2 = [6,7]
#リスト配列の連結

list_sample3 = list_sample + list_sample2

#要素追加確認用の出力

print(list_sample3)

#実行結果

[1, 2, 3, 4, 5, 6, 7]

実行結果に追加した要素の6と7が出力されていることが、確認できます。

リストの要素削除について

リスト配列の要素を削除する方法について、解説していきます。

リスト配列を使っていくこで、不要になる要素が出てくることがあります。

そんな時に要素削除が必要になります。

リストの要素削除記述方法について

リスト配列の要素削除する場合del文を使用します。

del文を使ったリストから要素を削除する記述方法は、下記になります。


del リスト配列名[削除する要素番号]

リストの要素削除使用例

リスト配列から要素を削除する記述方法だけでは、イメージがつきにくい方も多い為、実際にリスト配列に要素を削除する使用例をご紹介します。


#リスト配列の初期化

list_sample = [1,2,3,4,5]

#リスト配列から要素を削除

del list_sample[3]

#要素削除確認用に出力

print(list_sample)

#実行結果

[1, 2, 3, 5]

3番目の要素の4が出力されずに出力されています。

要素番号は0から開始される為、忘れていた方は特に要注意です。

リストの要素検索について

リスト配列を使っているとリスト配列内の要素を検索する機会が少なくありません。

要素を検索する方法について、解説していきます。

リストの要素検索方法について

リスト配列で要素を検索する場合は、大きく分けて2つの方法があります。

1つは配列内に指定の要素が含まれているか含まれていないかのみ判定する方法です。

2つ目は配列内に指定の要素が何番目に格納されているかを調べる方法です。

リスト配列内の要素を検索する記述方法は、下記になります。


#リスト配列内に検索要素が含まれているか、含まれていないかを調べる記述

"検索する要素" in 検索するリスト配列名

#リスト配列内の何番目に検索要素が含まれているかを調べる記述

リスト配列名.index(検索する要素)

要素番号まで必要なければ、inを使用した記述で検索するのがおすすめです。

リストの要素使用例

リスト配列から要素を検索する記述方法だけでは、イメージがつきにくい方も多い為、実際にリスト配列に要素を検索する使用例をご紹介します。


#リスト配列の初期化

list_sample = [1,2,3,4,5]

#inを使って要素の検索

result1 = 3 in list_sample

#indexを使って要素が格納されている番号を検索

result2 = list_sample.index(2)

#それぞれの検索結果を出力

print(result1)

print(result2)

#実行結果

True
1

result1では検索した要素がリスト配列に含まれている為、Trueを出力しています。

result2については、検索した要素が格納されている要素番号が出力されています。

indexを使用した場合、検索したキーが含まれていない場合は、戻り値は-1です。

リストの要素数取得について

リスト配列に今どれだけの要素数があるかを習得する方法について、解説していきます。

リストの要素数取得方法について

リスト配列の要素数を取得する記述方法は、下記になります。


len(要素数を調べたいリスト配列名)

リストの要素数取得使用例

リスト配列から要素数を取得する記述方法だけでは、イメージがつきにくい方も多い為、実際にリスト配列に要素数を取得する使用例をご紹介します。


#リスト配列の初期化

list_sample = [1,2,3,4,5]

#リスト配列の要素数を取得

result = len(list_sample)

#リスト配列の要素数出力

print(result)

#実行結果

5

リスト内包表記について

内包表記はリスト配列を作る記述方法の1つです。

内包表記を利用することで、処理速度を高速化させてりすることが出来る為、習得するのをおすすめします。

リストの内包表記方法について

リスト配列の内包表記の記述方法は、下記になります。


[リスト配列に追加する際の処理 for 変数名 in 要素を作る元になるデータ]

リストの内包表記使用例

リストの内包表記の使用例は、下記になります。


#内包表記を利用して1から9に5を乗算した要素

list_sample = [x*5 for x in range(1,10)]

#リスト配列の要素を出力

print(list_sample)

#実行結果

[5, 10, 15, 20, 25, 30, 35, 40, 45]

記述方法と使用例を見れば簡単に実装することが出来る為、習得をおすすめする記述方法です。

スライスでリスト要素取得について

リスト配列の中から1部の要素だけを切り出して取得する方法について、解説していきます。

スライスでリスト要素取得記方法について

リスト配列から1部の要素を切り出して取得する場合は、スライスを使用します。

スライスを利用する記述方法は、下記になります。


リスト配列名[開始要素番号:終了要素番号]

スライスでリスト要素取得使用例

実際にスライスでリスト要素を取得する使用例をご紹介していきます。


#リスト配列の初期化

list_sample = [1,2,3,4,5]

#2番目の要素から3番目の要素までを抽出する

result = list_sample[1:3]

#最初の要素から4番目の要素までを抽出する

result2 = list_sample[:4]

#スライスした要素の出力確認

print(result)

print(result2)

#実行結果

[2, 3]
[1, 2, 3, 4]

スライスを使う場合、開始番号または終了番号を省略することで最初からまたは最後までを抽出することが可能です。

python スライスについての詳しい解説はこちらの記事を参考にしてください。

リストの重複要素の取得と削除について

リスト配列に重複した要素を持ってしまうことは少なくありません。

リスト配列から重複した要素を取得する方法、削除する方法について解説していきます。

リストの重複要素の取得方法について

リスト配列から重複した要素を取得方法については、決められた記述方法が特にある訳ではありません。

一般的に多いのがfor文または内包表記を使って記述方法です。

具体的な使用例は、次の項目でご紹介します

リストの重複要素の取得使用例

リストから重複要素を取得するおすすめの使用例は、下記になります。


#リスト配列の初期化

list_sample = [1,1,2,3,5,4,5]

#内包表記を使って重複したデータのみを別リストに抽出

result = [x for x in set(list_sample) list_sample.count(x) > 1]

#重複した要素のリスト配列を出力
print(result)
#実行結果
[1, 5]

リストの重複要素の削除方法について

リスト配列から重複した要素を削除する方法ですが、こちらもfor文・set・内包表記を使った記述方法などがあります。

具体的な使い方は次の項目でご紹介します。

リストの重複要素の削除使用例

リスト配列から重複した要素を削除した使用例は下記になります。


#リスト配列の初期化

list_sample = [1,1,2,3,5,4,5]

#リスト配列から重複した要素をsetで取り除きsorted関数を使って、元の並び順を保持します。

result = sorted(set(list_sample), key=list_sample.index)
print(result)

#実行結果

[1, 2, 3, 5, 4]

実行結果が4と5が順番に並んでいないのは、元のリスト配列で先に5が要素として追加されていたからです。

まとめ

今回はpythonのリスト配列について、解説をしてきましたが、いかがでしたか。

リスト配列はPythonで配列処理を行う際に非常によく使用されます。

基本的な使い方やタプルとの違いをしっかり習得して、ステップアップする参考にして頂ければと思います。

WebCamp・WebCamp Proについて

WebCampは1ヶ月でプログラミング・Webデザインスキルを学ぶ通い放題のプログラミングスクールです。WebCamp Proは3ヶ月間で未経験から即戦力エンジニアを育成するプログラミングスクールです。

2つのサービスを運営するインフラトップでは、「学びと仕事を通して人生を最高の物語にする」という理念で会社を経営しています。

キャリアアップを目指す方は、この機会に私達と一緒にプログラミングを学んでみませんか?

11月11日、18日開催決定!2日間で人工知能(AI)を学習するPythonコースが開講

今回、当社(WebCamp)では、現役フリーランス・エンジニアとしてPythonの最前線で活動している講師をお招きし、2日間でPythonの基本から機械学習の基礎まで学ぶ短期集中型のコースを開講します。
Pythonの基礎プログラミング能力を身につけたい方機械学習やAIに興味はあるが学習できていない方現役Pythonエンジニアからリアルな話を聞きたい方
上記にあてはまる方は、ぜひご参加ください!

12月枠も残りわずか当社人気の転職保証コース
プログラミング学習から転職成功まで導く、当社人気のWebCamp Proコース。
11月受入枠は満員となっております。12月枠に向け、お早めの申込みをオススメします。
プログラミング未経験でもエンジニア転職を絶対成功させたい
スキルを身に着けて人生を自ら切り開きたい
上記にあてはまる方は、ぜひご検討ください!

▼未経験から1ヶ月でWebデザイン・プログラミングを学びたい方はこちら!

▼ついに開講!オンラインでWebデザインを学びたい方はこちら!

関連キーワード
pythonの関連記事
  • 【python入門者必見!】print関数の基礎から徹底解説
  • 【python超入門】WebサイトでPython学習のすすめ
  • 【python入門者向け】おすすめPDF教材3選
  • 【python入門者向け】おすすめの学習方法
  • 【Python入門】MacでPythonをはじめるまで
  • 【python入門者必見!】1からわかるrange関数の徹底解説
おすすめの記事