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

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

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

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

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

Pythonの特徴の1つとして、配列処理が優れています。

Pythonには複数の配列が準備されており、それぞれメリット・デメリットがあります。

しかし配列や連想配列は初心者には、使い分けが難しく最大限に使いこなすには、それぞれの特徴を把握しなければいけません。

今回はPythonの配列タプルについて、詳しく解説していきます。

配列について

タプルの具体的な解説に入る前に、まずは配列について解説をしておきます。

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

Pythonの配列には、タプル・リスト・ディクショナリがあり、それぞれ特徴があります。

実装する仕様に応じて最適な配列を選択することで、より良いプログラミングが行えるようになります。

配列タプルについて

タプルは配列の1種で、複数の要素を格納することが出来ます。

ここまでであれば、既にリストについて、学んだことがある方は違いがわからないと思います。

実際にリストとタプルの比較や違いはネット上などでも解説されています。

リストとタプルの大きな違いは、リストが初期化後にも要素の追加や削除が行えるのに対して、タプルは要素の追加や削除といった変更が行えません。

後は記述方法の違い以外は、リストに非常に近いものになります。

タプルを使用するメリット

タプルのメリットは、リスト・ディクショナリと比べて処理速度が速いことです。

配列として扱う要素が可変するものでなく、固定の場合はタプルを使うことで処理速度を早くすることが出来ます。

タプルを使用するデメリット

タプルのデメリットは、メリット部分からも推測出来るようにリストと違って要素の追加や削除を行うことが出来ません。

その為、要素数に可変性が必要な場合は、あまりおすすめできません。

また実装してみた結果要素が固定だったにも関わらず、リストで実装してしまったと言うことが多いのも残念な点です。

タプルの宣言について

タプルを使用する為の宣言について、解説していきます。

当然ですが、記述方法を間違えてしまうと正しく動作しなかったり、リストとの記述方法が似ているので、注意する必要があります。

タプルの宣言記述方法について

タプルの宣言記述方法は、下記になります。


タプル名 = (要素,要素,・・・・・)

要素を囲む括弧は()です。

リストとは[]で囲むかどうかの違いしかないので、間違わないように注意して使いましょう。

タプルの宣言使用例

それでは実際にタプルの宣言使用例について、ご紹介しておきます。


#タプル配列にa・i・u・e・oの要素を格納する例です。

tmp_tuple = ("a","i","u","e","o")

タプルは最初の初期化時点から要素の追加や削除が行えない為、宣言時に要素を決定しておく必要があります。

タプルの取り出しについて

タプルに格納されている要素を取り出す方法について、解説していきます。

要素の取り出しは、配列を利用する醍醐味とも言えます。

タプルの取り出し方法について

タプルの取り出し記述方法は、下記になります。


#要素番号を1つだけ取り出す

タプル名[要素番号]

#開始から終了要素番号を指定して取り出す

タプル名[開始要素番号:終了要素番号]

記述方法だけでは、具体的なイメージがつかない方も多いので、下記使用例と合わせてご確認頂ければと思います。

タプルの取り出し使用例

タプルの取り出し使用例をご紹介します。

下記使用例では、タプルに要素を追加し、要素を取り出しprint関数で出力する例になります。


#タプルの初期化による要素追加

tuple_tmp = ("a","i","u","e","o")

#2つ目の要素を取り出して出力する

print(tuple_tmp[1])

#2つ目から4つ目の要素を取り出して出力する

print(tuple_tmp[1:3])

#要素の最初から4つ目の要素を取り出して出力する

print(tuple_tmp[:3])

#2つ目から最後までの要素を取り出して出力する

print(tuple_tmp[1:])

#実行結果

i
('i', 'u', 'e')
('a', 'i', 'u', 'e')
('i', 'u', 'e', 'o')

注意するべき点としては、1つ目の要素は0番目になる点です。

また開始から終了までの要素を指定する場合、終了要素番号の1つ前までを抽出することになるので、こちらも注意が必要です。

開始または終了要素番号の指定を省略すると最初からまたは最後までを出力することになります。

タプルの検索について

タプル内に格納されている要素を検索する方法について、解説していきます。

タプルを始め、配列を使う場合に含まれている要素を検索する機会は非常に多いです。

タプルの検索方法について

タプル内に指定のキーが含まれるているかを確認するには、inを利用します。

タプル内の要素を検索する記述方法は、下記になります。


検索したい要素 in タプル名

タプル内に検索した要素が含まれている場合はTrue、要素が含まれていない場合はFalseとして戻り値が返ってきます。

タプルの検索使用例

タプル内の要素を検索する使用例は、下記になります。


#タプルに要素を格納

tuple_tmp = ("1","2","3","4")

result = "1" in taple_tmp

result2 = "5" in taple_tmp

print (result)

print(result2)

#実行結果

True

False

resultにはタプル内の要素に1が含まれている為、Trueが出力されています。

逆にresult2にはタプル内の要素に5が含まれていない為、Falseが出力されています。

タプルのソートについて

リストなどの配列でよく利用されるのがソート機能です。

タプルの場合は可変性がない為、宣言後にソートすることは出来ませんが、出力時にソートして処理を行うことは可能です。

タプルのソート方法について、解説をしていきます。

タプルのソート方法について

タプルのソートを行う場合は、sorted関数を利用して実装します。

タプルのソート記述方法は、下記になります。


ソート後の配列名 = sorted(タプル名)

タプルのソート使用例

タプルソートの記述方法だけでは、イメージがつきにくい為、実際の使用例をご紹介しておきます。


#タプルに順序をばらばらで数字を格納

tuple_sample = ("5","2","1","3","4"",6")

#sorted関数を使って、並べ替えてtuple_sortへ格納

tuple_sort = sorted(tuple_sample)

#ソート後の結果を出力する

print(tuple_sort)

#実行結果

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

タプルの初期化時には順序がばらばらで格納されていた要素を、sorted関数を使うことで並び替えて出力することが出来ています。

複数のタプル比較について

タプル同士の比較について、解説していきます。

タプルの比較方法について

他の配列同様に複数のタプルを比較する場合は、比較演算子を使って比較を行います。

基本的な記述方法は、下記になります。

比較するタプル名 比較演算子 比較するタプル名

タプルの比較使用例

記述方法だけでは、イメージがしにくいので実際の使用例をご紹介します。

タプルの比較使用例は、下記になります。


tuple_sample1 = ("A","B","C","D")

tuple_sample2 = ("A","B","C","D")

tuple_sample3 = ("A","B","C","D","E")

resulet = tuple_sample1 == tuple_sample2
resulet2 = tuple_sample1 != tuple_sample2
resulet3 = tuple_sample1 == tuple_sample3
print (resulet)
print (resulet2)
print (resulet3)

#実行結果

True
False
False

上記は要素を比較した結果がですが、resultには同じ要素を持ったタプル同士を比較しているのでTrueが出力されています。

result2では比較演算子が等しくないを指定している為、Falseが出力されていることから、正しく比較が出来ています。

またresult3では要素数が違うことからFalseを出力しています。

for文でタプル値の取り出しについて

for文でタプルに格納されている値を取り出す方法について、解説していきます。

for文でタプル値の取り出し方法について

配列は繰り返し処理と合わせて使われることが多く、タプルもその1つです。

タプルの要素をfor文で取り出す基本となる記述は、下記になります。


for 取り出した要素を一時的に入れる変数 in タプル名:
繰り返す処理

for文でタプル値の取り出し使用例

それでは具体的にタプルの要素をfor文で取り出す使用例をご紹介します。

下記使用例は、タプルの要素を全てprint関数で出力する例です。


tuple_sample = ("1","2","3","4","5")

for x in tuple_sample:

print(x)

#実行結果

1
2
3
4
5

タプルのリスト変換について

タプル配列として利用していた物をリスト配列に変換する方法について、解説していきます。

使用する用途としては、そのままですが、タプルとして扱っていたけど可変性が出てきたことによりリスト配列に変換したい時などがあげられます。

タプルのリスト変換方法について

タプルをリストに変換するにはlist関数を使用します。

記述方法は、下記になります。


list(タプル名)

タプルのリスト変換使用例

リストへの変換は非常に簡単ですが、実際の使用例を載せておくので参考にして頂ければと思います。

リスト変換の使用例は、下記になります。


tuple_sample = ("1","2","3","4","5")

list_ch = list(tuple_sample)

print(list_ch)

#実行結果

['1', '2', '3', '4', '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エンジニアからリアルな話を聞きたい方
上記にあてはまる方は、ぜひご参加ください!

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

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

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

関連キーワード
学習の関連記事
  • プログラム演習は技術向上に役立つ?【脱初心者】
  • プログラミング効率を上げるエディタの選び方とオススメ
  • プログラミングコンテストの応募内容と対策方法を徹底解説
  • 【中学生・高校生向け】プログラミング初心者にオススメの言語と教室
  • 【初心者向け】プログラミングを勉強するサークル7選!
  • プログラミング習得時間はどのくらい必要なのか?

当サイトで人気のオススメ転職サービスTOP3

1位 マイナビエージェント×IT

おすすめポイント

・平日忙しい人も、土曜日開催の個別キャリア相談会に参加できる

・職種や仕事内容(要件定義、上流工程から携わる仕事など)の要望が細かくできる
・マイナビの規模を活かした豊富で幅広い求人数

マイナビエージェント×ITの登録はこちら

2位 レバテックキャリア

おすすめポイント

・求人登録数4,000件以上

・エンジニア未経験、経験者両方に対応

・有名企業の採用担当者インタビューがみれる

・一次面接NGからの内定実績もあるほど、内定率が高い

レバテックキャリアの登録はこちら

 3位 type転職エージェント

おすすめポイント

転職者の71%が年収アップ

・IT系企業、特にエンジニアに限らず営業職の求人も充実している

各職種専門の転職アドバイザーが援助

type転職エージェントの登録はこちら

おすすめの記事