Pythonタプル関数について学ぶ[例を使って]

公開: 2020-03-20

タプルは、コンマで区切られたシーケンスまたはオブジェクトのコレクションです。 それらは、作成後に要素を変更できないことを除いて、多くの点でリストに似ています。 また、リストとは異なり、Pythonのタプルは不変オブジェクトです。 また、角かっこではなく括弧を使用します。

タプルの作成は、値をコンマで区切って、場合によっては括弧の間に配置するのと同じくらい簡単です。 ここではいくつかの例を示します。

  • tup1 =('英語'、'ヒンディー語'、1998、2016)
  • tup2 =“ c”、“ d”、“ e”、“ f”
  • tup3 =(5、6、7、8、9)

ご覧のとおり、タプルには任意の数の要素があり、整数、リスト、文字列など、さまざまなタイプの要素があります。 括弧の使用はオプションですが、従うことをお勧めします。 それでは、詳細を詳しく見ていきましょう。

初心者でデータサイエンスの詳細に興味がある場合は、一流大学のデータサイエンス認定を確認してください。

について読む: Pythonの演算子

目次

Pythonのタプル

1.タプルの作成

空のタプルは、内部に何もない2つの括弧、つまり()で構成されます。 作成方法は次のとおりです。

空の_tup=()

印刷(empty_tup)

#出力

()

次に、空でないタプルを作成する方法を見てみましょう。 括弧なしでタプルを作成することをタプルパッキングと呼びます。

tup ='マウス'、'キーボード'

print(tup)

#出力

(「マウス」、「キーボード」)

または、同じ出力に括弧を使用することもできます。

tup =('マウス'、'キーボード')

print(tup)

#出力

(「マウス」、「キーボード」)

単一要素のタプルの場合、1つの構成要素を括弧で囲むだけでは機能しません。 タプルであることを示すために、末尾にコンマを含める必要があります。 次の例を考えてみましょう。

tup =(50、)

2.連結、ネスト、および繰り返し

Pythonで2つのタプルを連結するには、次のコードを記述できます。

my_tup =(0,1,2,3,4,5)

your_tup =('hello'、'bye')

print(my_tup + your_tup)

#出力

(0,1,2,3,4,5、'こんにちは'、'さようなら')

以下は、ネストされたタプルを作成するためのコードです。

tup1 =(0,1,2)

tup2 =('python'、'learn')

tup3 =(tup1、tup2)

print(tup3)

#出力

((0,1,2)、('python'、'learn'))

繰り返しのあるタプルを作成するには、以下の手順に従います。

new_tup =('hi'、)* 4

print(new_tup)

#出力

('hi'、'hi'、'hi'、'hi')

上記のコードをコンマなしで記述すると、new_tupの出力として文字列hihihihiが得られます。

読む:上位5つのPythonモジュール

3.タプルへのアクセス

タプルの値にアクセスするには、インデックスに角かっこを使用します。 以下のコードを使用して、スライスをテストします。

タプル=(0,1,2,3)

print(tuple [1:])

print(tuple [::-1])

print(tuple [2:4])

#出力

(1,2,3)

(3,2,1,0)

(2,3)

4.不変性への対処

要素の値を更新または変更することはできませんが、以下の例に示すように、既存のタプルの一部を取得することで新しいタプルを作成できます。

tuple1 =('ab'、'xy')

tuple2 =(13,14)

タプルに対して無効な#action

#tuple1 [0] = 50

#新しいタプルの作成

tuple3 = tuple1 + tuple2

tuple3を印刷

#出力

('ab'、'xy'、13、14)

同様に、タプル内の個々の要素は不変であるため、削除することはできません。 ただし、別のタプルを組み合わせて、不要な構成要素を破棄することができます。 また、delステートメントを明示的に使用することで、タプル全体を削除できます。

tuple1 =('1月'、2月')

デルタプル1

また読む:インドのPython開発者給与

基本的なタプル操作

Pythonには、len()、cmp()、max()、min()、tuple(seq)などのさまざまな組み込みタプル関数があります。 それらの使用法を1つずつ示しましょう。

  • タプルの長さを見つける

my_tuple =('upgrad'、'python')

print(len(my_tuple))

#出力

2

  • 要素の比較

tup1 =('upgrad'、'python')

tup2 =('コーダー'、1)

if(cmp(tup1、tup2)!= 0):

#cmp()は、一致した場合は0を返し、tup1でない場合は1を返します。

#は長く、tup1が短い場合は-1

print('同じではない')

そうしないと:

print('Same')

#出力

同じではありません

  • 最大値と最小値

print('タプル1、2の最大要素:' + str(max(tup1))+'、' + str(max(tup2)))

print('タプル1、2の最小要素:' + str(min(tup1))+'、' + str(min(tup2)))

#出力

タプル1、2の最大要素:upgrad、coder

タプル1、2の最小要素:python、1

max()およびmin()チェックがASCII値に基づいていることがわかります。 タプルに2つの文字列がある場合、Pythonは文字列の最初の異なる文字をチェックします。

  • リストと文字列をタプルに変換する

list1 = [0、1、2、3]

print(tuple(list1))

print(tuple('upgrad'))#string'upgrad'

#出力

(0,1,2,3)

('u'、'p'、'g'、'r'、'a'、'd')

ここでは、リスト、文字列、セット、辞書キーなどの単一のパラメーターが取得され、タプルに変換されます。

ループでタプルを作成する方法

それでは、ループ内のタプルの作成に移りましょう。 次のPythonコードに従って実行できます。

tuple =('python'、)

n = 3#ループが実行された回数

または範囲内のi(int(n)):

tuple =(tuple、)

タプルを印刷する

#出力

(('python'、)、)

((('python'、)、)、)

(((('python'、)、)、)、)

ご覧のとおり、タプルを作成して反復処理する方法はいくつかあります。

リストに対する利点

Pythonのリストとタプルは、通常、同様の状況で使用されます。 ただし、さまざまな理由から、リストよりもタプルが優先されます。 それらのいくつかを以下に示します。

  • タプルは、異種タイプのデータに使用されます。 一方、リストは同種のデータ型に適しています。
  • タプルは、リストと比較して反復処理が高速であるため、パフォーマンスが向上します。 これは、それらの不変の性質に起因します。
  • データを書き込み保護するために、タプルの実装に進むことができます。
  • 不変要素は辞書キーとして使用できます。

結論

この記事では、Pythonのタプルについて、それらが何であるか、それらを作成する方法から、さまざまな操作や利点に至るまで、すべてを理解しました。 この情報は、Pythonの学習の旅を進めるときに必ず役立ちます。

この記事を読んでいるなら、Python開発者になるという野心を持っている可能性があります。 Pythonの学習に興味があり、さまざまなツールやライブラリを手に入れたい場合は、データサイエンスのExecutivePGProgramをチェックしてください。

Pythonのタプルの特徴は何ですか?

Pythonでは、タプルは変更できないオブジェクトの順序付けられたコレクションです。 ここで、Pythonのオブジェクトは、整数、タプル、リスト、文字列などです。出力の表示は要素が挿入される順序に依存するため、挿入順序は保持されます。 タプルは不変であり、タプルに追加されたオブジェクトを変更することはできません。 タプルは、同じタイプのオブジェクトと異なるタイプのオブジェクトの両方を格納できます。 タプルでは、​​インデックス作成が主要な役割を果たします。 重複をタプルに格納できます。 タプルでは正と負の両方のインデックスを使用できます。正のインデックスは順方向を示し、負のインデックスは逆方向を示します。 タプル内のオブジェクトを区切るための区切り文字としてコンマを使用する必要があります。

タプルに組み込みメソッドはありますか?

はい、タプルで使用できる2つの組み込みメソッドがあります。 タプルは不変であり、追加後にタプル内のオブジェクトを変更することはできません。 タプルオブジェクトは、count()とindex()の2つの使用可能な組み込みメソッドを呼び出すことができます。 count()は、タプル全体で特定の値が発生する回数を返します。 index()は、指定された値のタプル全体を検索し、その値が見つかった位置も返します。

タプルがPythonのリストよりも速いのはなぜですか?

Pythonには可変オブジェクトと不変オブジェクトがあり、リストは可変オブジェクトに分類され、タプルは不変オブジェクトに分類されます。 タプルは単一のメモリブロックに格納され、新しいオブジェクトを格納するための余分なスペースは必要ありません。

一方、リストは2つのブロックに割り当てられ、一方のブロックにはオブジェクト情報が格納され、もう一方のブロックには新しいデータを追加するための可変サイズがあります。 これが、タプルがPythonのリストよりも高速である主な理由です。 これが、リストと比較してタプルのインデックス作成が高速であるもう1つの理由です。