Pythonのタプル要素の取り出し方法について現役エンジニアが解説【初心者向け】

初心者向けにPythonのタプル要素の取り出し方法について解説しています。最初にタプルとリストの違い、タプルの使い方の基本を説明します。次にタプルの要素からデータを取り出す場合の書き方をサンプルコードで見ていきましょう。

TechAcademyマガジンは受講者数No.1のオンラインプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。

Pythonのタプル要素の取り出し方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

そもそもPythonについてよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプPython講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

タプル要素の取り出し方法について詳しく説明していくね!

大石ゆかり

お願いします!

目次

 

タプルとは

Pythonにはタプル(tuple)とよばれるオブジェクトの順序付き集合のかたがあります。基本的な性質はリストに似ていますが以下の点で異なります。

  • タプルでは角括弧”[ ]”の代わりに括弧”( )”で要素を囲むことで定義します
  • タプルの要素を変更することはできません

 

[PR] Pythonで挫折しない学習方法を動画で公開中

タプルの使い方

1. 要素を取り出す

タプルから要素を取り出す際にはインデックスを指定する必要があります。インデックスの指定の仕方はリスト同様、一番最初の要素は0から始まります。また、負の数を指定することで後ろから要素を取り出すことができます。

2. forループ

forループもリスト同様使用することが可能です。

3. 要素を変更する場合

タプルは要素を変更することができません。しかし、どうしても変更したい場合にはタプルをリストに変更することで要素を変更することができます。ただ、このようなじょうきょうになってしまうのであれば、コードを見直してみる必要があるかもしれません。

 

タプルの要素からデータを取り出してみよう

コード

t = ("Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday")
print(t[0])
print(t[-1])
print(t[2:])
print(t[-5:-3])

結果

Monday
Sunday
('Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday')
('Wednesday', 'Thursday')

解説

タプルで要素を取り出す時はリスト同様にインデックスを指定してあげることで取り出すことができます。

 

コード

t = ("Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday")
    for t_el in t:
        print(t_el)

結果

Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday

解説

forループで使用するときも同様に

 

コード

t = ("Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday")
print(type(t))
t = list(t)
print(type(t))
t[2] = "Miércoles"
t = tuple(t)
print(t)

結果

<class 'tuple'>
<class 'list'>
('Monday', 'Tuesday', 'Miércoles', 'Thursday', 'Friday', 'Saturday', 'Sunday')

解説

タプルの要素を変更するため、タプルで作られたtをリストに変更して要素を変更しました。その後要素を置き換えて、タプルに戻しています。

 

まとめ

今回はタプル要素の取り出し方法についてみていきました。Pythonでは型を意識してコードを書くことを忘れてしまいがちですが、タプルを使う際には型を意識してコードを作成してみるのもいいかと思います。

また、タプルでも要素に名前を付けて保存するnamedtupleというものもありますので、そちらも併せてしようできるようになるといいですよ!!

 

監修してくれたメンター

メンターkatoさん

学生時代に数値解析のためにプログラミングを始める。現在は企業にて専門職として働くかたわら、プログラムを書き業務効率化を図っている。

現在のメイン言語はPython, JavaScript。また、企業内の希望者にPythonのメンターとして基礎から教えている。テックアカデミーではJavaScriptを教える。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でもPythonを使った人工知能(AI)や機械学習の基礎を習得できるオンラインブートキャンプPython講座を開催しています。

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。