第二章では、データ構造をまとめたもの

最も一般的な分類Pythonのシーケンス型である変数と不変シーケンスしかし、別の分類があること、に入れ、また有用であるフラットコンテナとシーケンスのシーケンス元のボリュームが使用するより速く、小さく、簡単ですが、それだけで、このような数字、文字やバイトなどの原子データの数を保持することができます。特にネストされたデータ構造が現れて、コンテナシーケンスは、より柔軟であるが、容器は可変配列オブジェクトに遭遇したとき、この組み合わせは、多くの場合、いくつかの「事故」を思い付くので、ユーザーは、注意する必要があり、ユーザーがすべきいくつかは、正しいコードすることを確実にするために少し余分なと思いました。

リスト内包とジェネレータ式が構築および初期化シーケンスへの柔軟な方法を提供し、これらのツールは非常に強力です。あなたが巧みにそれらを使用することができない場合は、練習に時間を割くことができます。彼らは難しいことではありませんが、それら中毒性を使用します。

Pythonのタプルでは二つの役割を果たしている、両方の名前を付けずに、レコードのフィールドとして使用することができますが、また、不変のリストとして見ることができます。それを開梱時にタプルを使用すると記録されている場合に異なるフィールドタプルから抽出情報に最も安全で信頼性の高い方法です。*新しいタプル開梱構文の導入は、ユーザーが選択的に不要なフィールドを無視することができ、利便性の高いレベルを可能にします。名前付きタプルもない新しい概念が、彼らが値する注意を受けていないようです。通常のタプルのように、タプルという名前のインスタンスも非常に省スペースであるが、それはまた、レコードを置くための実用的な._asdict()メソッドに加えて、やり方によってタプル名の様々な分野の情報を取得するための便利な場所を提供しますOrderedDictタイプになります。

最も人気のあるPython言語の機能は、スライスのシーケンスであり、そして多くの人が実際に完全にその強力な場所を理解していません。例えば、ユーザ定義型はまた、numpyの(...)のシーケンスデュオWeiqie支持シート及び省略を選択することができます。また、スライス割り当てショートカット修飾可変配列です。

私たちは簡単に不変の要素を含む多次元のリストを初期化することができ、nは前提の適切な使用に*配列をステッチ繰り返します。インクリメンタル割り当てと+ = * =変数が違ったと不変のシーケンスに処理されるだろう。不変のシーケンスの顔には、これら2つの操作がバックで新しいシーケンスを生成します。割り当てられたオブジェクトが変数である場合でも、その後、シーケンスは、場所を変更します - それはまた依存します

配列自体は特別なメソッドを実装します。

ソート順序でソートし、組み込み関数、非常に柔軟なものの、しかし、それらを使用することは難しいことではありません。それらはソートアルゴリズムは、サイズを比較する方法を指定するオプションのパラメータとしての機能を受け入れるため、これらの2つの方法は、より柔軟性があり、このパラメータは重要なパラメータです。キーは、minとmax関数で使用することができます。あなたは順序付けられたシーケンスの順序を維持すると同時に、新しい要素を挿入する場合は、必要がbisect.insortを使用します。効果はすぐにbisect.bisect見つけることです。

リストやタプルに加えて、Pythonの標準ライブラリもarray.array。また、numpyのscipyのダウンロードとは、Pythonの標準ライブラリの一部ではありませんが、それらについて少し学んで、そして大規模な数値データを扱うときには介入を占うます。

章の最後では説明collections.dequeそれが特徴汎用性とスレッドセーフを持って、このタイプを。表2-3 APIとそれを比較しました。最後に、この章では、キューの標準ライブラリの実装の他のいくつかのタイプを述べました。

おすすめ

転載: www.cnblogs.com/yuchen991/p/12441562.html