タプル-タプル
このリストは、プログラムの実行中に変更される可能性のあるデータセットを格納するのに非常に適しています。
リストは変更できますが、タプルは変更できません
Pythonは変更できない不変の値を呼び出し、不変のリストはタプルと呼ばれます
1. タプルの作成と削除
(1)割り当て演算子を使用して、タプルを直接作成します
文法:
tuplename =(element1, element2, element3,....)
Pythonでは、タプルはすべての要素を囲むために括弧のペアを使用しますが、値のセットがコンマで区切られている限り、括弧は必要ありません。Pythonはそれをタプルにすることができます。
verse ="釣り船の歌の夜","渓流","水蓮","ハンパレスキウユエ" #タプル
作成するタプルに** 1つの要素しかない場合は、要素の後にコンマを追加する必要があります。そうしないと、Pythonによって文字列**になります。
verse1 =('翡翠の鍋に氷が入っている') #ストリング
verse2 =('翡翠の鍋に氷が入っている',) #タプル
(2)空のタプルを作成します
emptytuple =()
(3)数値タプルを作成する
tuple()関数を使用して、range()関数のループ結果を数値タプルに直接変換できます。
tuple(data)
data-反復可能なオブジェクト
(4)タプルを削除する
del tuplename
デルステートメントは実際の開発では一般的に使用されません。Pythonの組み込みのガベージコレクションメカニズムによって未使用のタプルが自動的に破棄されるため、手動で削除しなくても、Pythonは自動的にタプルをリサイクルします。
2. タプル要素にアクセス
スルーforループ
coffee_name =('ブルーマウンテン','カプチーノ','マンデリング','モカ','シベット','コロンビア')print('こんにちはようこそ~イミカフェ~\n当店には:')for name in coffee_name:print(name,"コーヒー", end=' ')'''
出力
こんにちは、ようこそ〜イミカフェ〜
私の店には:
ブルーマウンテンコーヒーカプチーノコーヒーマンデリングコーヒーモカコーヒーシベットコーヒーコロンビアコーヒー
”’
for + enumerate()
enumerate():-列挙
この関数は、トラバース可能なデータオブジェクト(リスト、タプルなど)をインデックスシーケンスに結合し、データとデータ添え字を同時にリストするために使用されます。通常、forループで使用されます。
team =('ロケット','戦士','開拓者','サンダー','ジャズ','スパーズ')for index, item inenumerate(team):if index %2==0:print(item +'\t\t', end='')else:print(item)
出力
ロケット戦士
先駆者サンダー
ジャズスパーズ
3. タプルの要素を変更する
タプルは不変のシーケンスであるため、個々の要素の値を変更することはできません。タプルを再割り当てすることで変更されました。
タプルとタプルは接続できますが、両方ともタプルである必要があります。そうでない場合は間違っています。接続するタプルの要素が1つしかない場合は、コンマを忘れないでください。
4. タプルの理解
import random
random_number =(random.randint(10,100)for i inrange(10))
random_number
< generator object <genexpr at 0x0000021A177BDED0 #ジェネレータオブジェクト
tuple(random_number) #タプルに変換(28,63,34,98,96,36,87,35,25,44)
上記の実行結果から、タプル内包表記を使用して生成された結果は、タプルまたはリストではなく、リスト内包表記とは異なるジェネレータオブジェクトであることがわかります。
ジェネレータオブジェクトをタプルに変換するには、tuple()メソッドを使用し、リストに変換するには、list()メソッドを使用します。
例1:
# 沿って__next()__メソッドトラバーサル
# Python2の場合.x in__next()__メソッドは次に対応します()メソッドは、ジェネレータオブジェクトをトラバースするためにも使用されます。
number =(i for i inrange(3))
number
< generator object <genexpr at 0x0000021A1781EA20
number.__next__()0
number.__next__()1
number.__next__()2
number.__next__()Traceback(most recent call last):
File "<pyshell#11 ", line 1,in<module
number.__next__()
StopIteration #反復を停止します
例2:
# forループをトラバースします
number =(i for i inrange(4))
number
< generator object <genexpr at 0x0000021A1781EA98for i in number:print(i, end='')0123print(tuple(number))()
上記の2つの例から、トラバーサルの方法に関係なく、ジェネレーターオブジェクトを再度使用する場合は、トラバーサル後にジェネレーターオブジェクトが存在しないため、ジェネレーターオブジェクトを再作成する必要があります。
5. タプルとリストの違い
(1)全体が置き換えられない限り、リストは変更可能であり、タプルは変更不可能です。
(2)リストはappend()、extend()、insert()、remove()、pop()で追加および削除できますが、タプルにはこれらのメソッドがありません。
(3)リストは変更とトリミングによるアクセスをサポートしますが、タプルはアクセスのみをサポートし、変更はサポートしません。変更が不要な場合は、タプルを使用することをお勧めします。
(4)タプルは、リストよりもアクセスと処理が高速です。
(5)リストは辞書キーとして使用できませんが、タプルは使用できます。
上記は、パイソンタプルの使用の詳細な内容です。パイソンタプルの使用の詳細については、ZaLou.Cnの他の関連記事に注意してください。
Recommended Posts