タプルは不変シーケンスであり、その内容は変更できません。タプルはリストと似たシーケンスですが、主な違いは、タプルの作成後に内部の要素を追加または削除できないことです。
タプルの一般的な形式は次のとおりです。
(1,2,3,4,5,6)
リスト構造との違いは、タプルでは括弧「()」が使用され、各要素が「,」で区切られることです。タプルには整数、文字列、リスト、その他の種類のコンテンツも格納できます。
創造にはさまざまな形があります。
空のタプルの作成はリストと同じであり、構文は次のとおりです。
my_tuple=()
例を見てみましょう:
my_tuple=()#空のタプルを作成します print(my_tuple)#出力 print('data type', type(my_tuple))#その型を確認します
出力結果:
() データ型<クラス'タプル'>
タプルを作成するために値を代入する方法も比較的簡単です。リストについて学習した後は、リストの関連内容を習得する必要があります。
直接代入の構文形式:
my_tuple=(値1,値2,値3,値4,値5)
my_tuple はリストの名前で、value1 ~ value5 バイトの各要素は整数、文字列、またはリストになります。次の例を参照してください。
my_tuple=('www.dotcpp.com','123456',[1,2,3,4,5,6])#タプルを作成して直接割り当てる print(my_tuple)#Output
出力結果:
('www.dotcpp.com','123456',[1,2,3,4,5])
range() 関数を使用すると、特定のデータ サイズのタプルを作成できます。次の例を見てください。
my_tuple=tuple(range(1,100,3))#range(1,100,3) は、1 ~ 100 の間のステップ サイズ 3 のシーケンスを作成し、最後に tuple() を使用してそれをタプル型 print(my_tuple)# にキャストします。出力
出力は次のとおりです。
(1,4,7,10,13,16,19,22,25,28,31,34,37,40,43,46,49,52,55,58,61,64,67,70,73 、76、79、82、85、88、91、94、97)
タプルを削除する方法はリストの場合と同じで、 del ステートメントを使用して直接削除します。
delmy_tuple
例えば:
>>>my_tuple=tuple(range(1,100,3))#range(1,100,3) は、1 ~ 100 の間のステップ サイズ 3 のシーケンスを作成し、最後に tuple() を使用してそれをタプル型にキャストします >> > delmy_tuple#元図を削除>>>print(my_tuple)#この時点で出力するとエラーが報告されます Traceback(mostrecentcalllast):File<stdin>,line1,in<module>NameError:name'my_tuple'isnotknown
タプル要素にアクセスするときは、インデックス位置に基づいてアクセスする要素も見つけます。
まずタプル my_tuple = ('a','b','c','d') を作成します。
次に、コードを見てみましょう。
my_tuple=('a','b','c','d')print(my_tuple[0],my_tuple[1],my_tuple[2],my_tuple[3])
出力結果:
ABCD
対応する表を見てください。
タプルは不変の配列であるため、リスト形式のインデックス値を介して要素を直接変更すると、エラー メッセージが表示されます。
>>>my_tuple=(1,2,3,4,5,6)>>>my_tuple[2]=6Traceback(mostrecentcalllast):File<stdin>,line1,in<module>TypeError:'tuple'objectdoesnotsupportitemassignment
したがって、タプル内の要素を変更したい場合は、他のメソッドを使用する必要があります。通常、再代入方式と型変換方式の 2 つの方式が使用されます。
>>>mytuple=(11,22,33,44,55,66,77)>>>mytuple=(1,2,3)>>>mytuple(1,2,3)
この上書き方法はタプル内の要素を簡単に変更できます。もちろん、この方法の使用範囲は限られているため、ほとんどの場合は 2 番目の方法を使用できます。
タプルの 100 番目の要素を変更したい場合は、上記の方法を使用するのは非常に面倒なので、最初にタプルをリストに変換するなど、他のデータ型に変換します。変換 リストとして動作します。
次の例を見てください。
my_tuple=(1,2,3,4,5,6)#最初にタプルを作成します my_tuple=list(my_tuple)#タプルをリスト形式に変換します print(my_tuple,type(my_tuple))#今すぐ出力を見てください データとtypes my_tuple.insert(3,'新しい要素の挿入')#リストの下の要素を挿入、変更、または削除します type my_tuple[3]=['要素の変更']my_tuple.pop()#要素の削除、pop()は自動的に行われます対応する最後の項目を削除します 6my_tuple=tuple(my_tuple)#最終的にタプル形式に変換されました print(my_tuple,type(my_tuple))#print
出力結果:
[1,2,3,4,5,6]<クラス'リスト'>(1,2,3,['要素の変更'],4,5)<クラス'タプル'>
タプルはリストに比べていくつかの機能が欠けていますが、タプルには独自の特徴もあります。第一に、タプルの処理速度はリストよりも高速です。データ サイズが大きい場合、タプルを使用するとデータが変更されないことが保証され、セキュリティが確保され、ストレージの観点からは良い選択となります。