Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python Zip:ステップバイステップガイド

Python zip()関数は反復可能なアイテムを受け入れ、それらを単一のタプルにマージします。結果の値は、反復可能オブジェクトのペアを格納するzipオブジェクトです。リスト、タプル、セット、または辞書は、zip()関数を介して渡すことができます。


Pythonには、コーダーがデータをループできるようにする多数の組み込み関数があります。これらの関数の1つはPythonzipです。 zip() 関数は、2つ以上のデータソースからの要素を1つにマージするイテレータを作成します。

このチュートリアルでは、Python zip()の基本を説明します。 また、zipを反復処理する方法と、zip形式のオブジェクトを解凍する方法についても説明します。

Python反復リフレッシャー

Pythonでは、 iという用語を使用します terate プログラムがリストを実行しているときを説明します。たとえば、 forがあるとします。 会社が運営するすべての支店の名前を出力するループ。私たちのプログラムは反復していると言えます 名前のリストから。

反復可能 一方、は、メンバーアイテムを個別に返すことができるオブジェクトです。 for を使用して各アイテムを個別に印刷できるため、配列は反復可能です。 ループ。

Pythonzip関数

zip()関数は、2つ以上の反復可能オブジェクトの内容を結合します。 zip()はzipオブジェクトを返します。これは、引数として渡したすべての値がペアとして格納されるタプルのイテレータです。

Pythonのzip() 関数は、引数として反復可能(リスト、タプル、セット、ディクショナリなど)を取ります。この関数は、関数に渡した各反復可能オブジェクトの要素を含むタプルのリストを生成します。

zip()関数の構文は次のとおりです。

参加者の81%は、ブートキャンプに参加した後、自分たちの技術的な仕事の見通しについてより自信を持っていると述べました。今日のブートキャンプにマッチしましょう。

平均的なブートキャンプの卒業生は、ブートキャンプの開始から最初の仕事を見つけるまで、キャリアの移行に6か月も費やしませんでした。

zip(iterable1, iterable2, ...)

必要な数の反復可能オブジェクトを含めることができます。マージするイテラブルをzip()関数の引数として指定する必要があります。

zip()メソッドは、反復可能なオブジェクトが完全に圧縮されるまで実行を続けます。これは、イテラブルが使い果たされたときに発生します。つまり、可能なすべてのペアが作成されると、zip()メソッドは停止します。

zipPythonの例

2つのPythonリストがあるとしましょう。 1つのリストには従業員名が含まれ、もう1つのリストには従業員番号が含まれます。両方のリストをすべてタプルの配列にマージする必要があります。これにより、従業員の名前と番号を並べて保存できます。

zip()を使用できます 2つのリストをマージする関数。このデータをマージするプログラムの例を次に示します。

employee_numbers = [2, 9, 18, 28]
employee_names = ["Candice", "Ava", "Andrew", "Lucas"]

zipped_values = zip(employee_names, employee_numbers)
zipped_list = list(zipped_values)

print(zipped_list)

zip関数は次を返します:

[('Candice', 2), ('Ava', 9), ('Andrew', 18), ('Lucas', 28)]

私たちのプログラムは、タプルアイテムの配列を作成しました。各タプルには、従業員の名前とそれぞれの従業員番号が含まれています。

コードの最初の2行で、従業員番号と従業員名を格納する変数を宣言します。

次に、 zip()を実行します 関数。この関数は、2つのリストをマージして、タプルの新しい配列を作成します。

zipアイテムをリストに変換します。これは、zip()関数がzipオブジェクトを返すためです。 zipオブジェクトを反復処理できます。ただし、zipをコンソールに印刷して、その内容を読み取り可能な形式で表示することはできません。コンソールからzipの内容を表示できるように、zipオブジェクトをリストに変換する必要があります。

zipped_values zip()です 上記のプログラムに次のコードを追加して、アイテムを作成します。

print(type(zipped_values))

このコードは、次のzipクラスを返します。

<class 'zip'>

上記の例では、2つのアイテムを一緒に圧縮しました。ただし、zipしたいものがもっとあれば、それも可能です。行う唯一の変更は、アイテムの別のリストを zip()に渡すことです。 機能。

Pythonでzipを使用して反復可能オブジェクトをループする

zip()関数はイテレータを返します。これは、各圧縮アイテムの内容を個別に表示できることを意味します。

複数の反復可能オブジェクトの操作は、 zip()の最も一般的なユースケースの1つです。 Pythonで機能します。たとえば、複数のリストを調べたい場合は、 zip()を利用できます。 機能。

zip()関数を使用して、employee_numbersリストとemployee_namesリストの両方を反復処理してみましょう。

employee_numbers = [2, 9, 18, 28]
employee_names = ["Candice", "Ava", "Andrew", "Lucas"]

for name, number in zip(employee_names, employee_numbers):
	print(name, number)

コードは次を返します:

Candice 2
Ava 9
Andrew 18
Lucas 28

私たちのプログラムは、 zip()するタプルのリストを繰り返し処理します。 を返し、名前と数値の2つの値に分割します。

これにより、複数の反復可能なオブジェクトを一度に簡単に反復できます。これで、各従業員の名前とそれぞれの従業員番号を表示できます。必要に応じて、これを使用して3つ以上の反復可能なオブジェクトを反復処理できます。

Pythonで値を解凍する

このコードでは、さまざまなタイプのデータを圧縮しています。しかし、どのようにしてデータを以前の形式に復元するのでしょうか。分割するタプル(またはzip形式の値)のリストがある場合は、 zip()を使用できます。 関数の解凍演算子。これはアスタリスクです* zip()と組み合わせて使用​​します 機能。

zip()の例を次に示します。 実行中のオペレーターの開梱:

employees_zipped = [('Candice', 2), ('Ava', 9), ('Andrew', 18), ('Lucas', 28)]
employee_names, employee_numbers = zip(*employees_zipped)

print(employee_names)
print(employee_numbers)

このコードは次の出力を返します:

('Candice', 'Ava', 'Andrew', 'Lucas')
(2, 9, 18, 28)

コードの最初の行で、タプルのリストを含む変数を定義します。次に、次の行で2つの変数を定義します。これらの変数はemployee_names およびemployee_numbers。 これらの変数の値は、解凍関数から割り当てます。

unzip関数は、 employees_zippedを使用するzip関数です。 変数は、解凍演算子 *を使用してzipを解凍します。 。上記の例では、従業員名と従業員番号を含む2つの新しい変数を出力します。

結論

zip()関数は、反復可能なオブジェクトを入力として受け取り、それらをzip()オブジェクトに結合します。このzip()オブジェクトは、反復可能な各入力からの値を並べて表示します。これは、1つにマージする2つ以上の配列またはタプルがある場合に役立ちます。

zip()の使用方法について説明しました ゼロまたは1つの入力で機能します。 zip()を使用できます iterablesをループして、すでにzipしたデータを解凍できます。これで、Pythonのマスターになるための道を進んでいます zip() 機能。

Pythonソフトウェア開発言語を学ぶためのヒントやアドバイスについては、Pythonでコーディングする方法ガイドをお読みください。


  1. Pythonインタープリター:ステップバイステップガイド

    Pythonインタープリターは、マシンに正しいバージョンのPythonがインストールされていることを確認しなくてもオンラインで存在するため、Pythonは非常にアクセスしやすく学習できます。この記事では、Pythonインタープリターとは何かについて説明し、オンラインで使用できる、より人気のある、初心者向けのインタープリターをいくつかリストします。 Pythonプログラムはどのように実行されますか? Pythonは、Javaと同様に、インタプリタ言語またはコンパイル言語として完全に分類することはできません。両方のほんの少しです。 この場合にコンパイルされるということは、どの

  2. Python zip()関数

    zip() 関数は、複数のイテレータをグループ化するために使用されます。 zip()のドキュメントをご覧ください ヘルプを使用して機能する 方法。次のコードを実行して、 zip()のヘルプを取得します 機能。 例 help(zip) 上記のプログラムを実行すると、次の結果が得られます。 出力 Help on class zip in module builtins: class zip(object)    | zip(iter1 [,iter2 [...]]) --> zip object    |    | Return