Pythonノート(7):タプルの定義と使用

少しの知識、大きな挑戦!この記事は「プログラマーのための基本的な知識「クリエイティブな活動。

みなさん、こんにちは。一杯週、酔いたくない(巻き込まれた)フロントエンド。書かれた記事があなたの好意を得るのに十分幸運であるならば、私は非常に幸運です〜

前に書く

Pythonでは、タプルはリストに非常によく似たデータ型ですが、リスト内の要素は変更できますが、タプル内の要素は変更できません

タプルの定義と使用

意味

要素の定義では通常、括弧()付きのリテラル構文を使用します。コード例は次のとおりです。

tuple1 = ("Hello", "一碗周", "你好")

print(type(tuple1))  # 查看元组类型  <class 'tuple'>
print(tuple1)  # ('Hello', '一碗周', '你好')
复制代码

使用する

タプルでサポートされている演算子と使用方法はリストと同じです。サンプルコードは次のとおりです。

tuple1 = ("Hello", "一碗周", "掘金", "开发者", "strive")
tuple2 = (10, 20, 60, 34)

# 拼接
tuple3 = tuple1 + tuple2
print(tuple3)  # ('Hello', '一碗周', '掘金', '开发者', 'strive', 10, 20, 60, 34)
print(tuple2 * 2)  # (10, 20, 60, 34, 10, 20, 60, 34)

# 索引和切片
print(tuple1[1], tuple1[-4])  # 一碗周 一碗周
print(tuple3[:2])  # ('Hello', '一碗周')
print(tuple3[::2])  # ('Hello', '掘金', 'strive', 20, 34)

# 遍历操作
for ch in tuple1:
    print(ch)
'''
Hello
一碗周
掘金
开发者
strive
'''

# 成员运算
print("一碗周" in tuple1)  # True
print("掘金" not in tuple1)  # False
复制代码

()は空のタプルを意味します。タプルには2つの要素があり、2つのタプルと呼ばれます。5つある場合は5つのタプルと呼ばれますが、内部にある場合('hello')はタプルではなく、括弧が変更されます。優先括弧。括弧にする場合は、コンマを追加する必要があります,。それ以外の場合は、タプルを表しません。サンプルコードは次のとおりです。

a = ()
print(type(a))    # <class 'tuple'>
b = ('一碗周')
print(type(b))    # <class 'str'>
c = (100)
print(type(c))    # <class 'int'>
d = ('一碗周', )
print(type(d))    # <class 'tuple'>
e = (100, )
print(type(e))    # <class 'tuple'>
复制代码

タプルアプリケーションシナリオ

梱包と開梱

複数のコンマ区切り値を変数に割り当てる場合、複数の値はタプルタイプにパックされます。タプルを複数の変数に割り当てる場合、タプルは複数の値にアンパックされてから、対応する値に割り当てられます。変数の場合、サンプルコードは次のとおりです。

t = "Hello", "一碗周", "掘金", "开发者", "strive"
print(type(t))  # <class 'tuple'>
print(t)  # ('Hello', '一碗周', '掘金', '开发者', 'strive')

x, y, z, i, j = t
print(x, y, z, i, j)  # Hello 一碗周 掘金 开发者 strive
复制代码

解凍時に要素数と変数数が一致しない場合は、次のようなエラーが発生します。

t= ("Hello", "一碗周", "掘金", "开发者", "strive")

# x, y, z = t # ValueError: too many values to unpack

x, y, z, i, j, k, l = t # ValueError: not enough values to unpack
复制代码

ValueError: too many values to unpack開梱するのに十分な値がありません

ValueError: not enough values to unpack解凍された値が多すぎます

変数の数がタプルの数より少ないというエラーを解決する方法は、ワイルドカードを使用すること*です。このワイルドカードを使用すると、変数は複数の値を受け取ることができ、変数はリストに変換されます。このワイルドカードは1回しか表示できません。次のコード例:

t = ("Hello", "一碗周", "掘金", "开发者", "strive")

x, y, *z = t
print(x, y, z)  # Hello 一碗周 ['掘金', '开发者', 'strive']

x, *y, z = t
print(x, y, z)  # Hello ['一碗周', '掘金', '开发者'] strive

*x, y, z = t
print(x, y, z)  # ['Hello', '一碗周', '掘金'] 开发者 strive
复制代码

2つの変数の値を交換します

Pythonで、2つの変数の値を交換しab次のようなコードを使用するには

a, b = b, a
复制代码

同様に、3つの変数、、、の値をa交換する場合b、つまり、割り当て割り当て割り当て、同じことを行うことができます。cbacbac

a, b, c = b, c, a
复制代码

関数が複数の値を返すようにする

returnステートメントに2つの値がある場合、2つの値は2タプルにアセンブルされ、返されますしたがって、定義された関数を呼び出すと、この2タプルが取得されます。また、アンパッキング構文を使用して、2タプルの2つの値を2つの変数に割り当てることもできます。

おすすめ

転載: juejin.im/post/7022990623774867492