Python(9)入門

Python入門(9/18)
**セクション9 **データ構造:リスト

みなさん、こんにちは。pythonモジュールを学んだ後は、ほぼ完全なPythonアプリケーションを作成できます。また、比較的複雑なアプリケーション要件に直面しても、パッケージとモジュールを使用して美しいシステムアーキテクチャを構築することもできます。

しかし、私たちが遭遇するいわゆる複雑なアプリケーション要件がビジネスロジックで複雑であるだけでなく、データ構造でも複雑である場合はどうなるでしょうか。たとえば、データ構造のいわゆる複雑さは、データの量が多いだけでなく、さまざまなタイプや特性を異なる方法で処理する必要があります。したがって、整数、小数、変数などの概念に基づくデータの理解は十分ではありません。実際、プログラミングで解決したい問題は、純粋にテキストではないことがよくあります。多くの非デジタルオブジェクトは、たまたま私たちが本当に扱いたいオブジェクトです。また、調査対象の特性に応じて、同じ特性のデータをまとめることができますので、まとめて同様の処理を行うと、効率が大幅に向上するはずです。これが基本的な考え方です。

この考えに基づいて、今日から、Pythonのいわゆる4つのデータ構造であるより複雑なデータタイプをさらに研究する必要があります。

始める前に、非常に重要な理解を築くために少し時間を費やす必要があります。実際に問題に対処する過程で、私たちは常に多くのデータに直面し、現実の世界でもそれを理解することができます。 、問題自体の解決はデータの処理です。データがなければ、どのプログラムメソッドも「調理するものがない」ことになります。

ほとんどすべてのコンピューター言語がすべてがオブジェクトであることを強調していることは簡単にわかりますが、問題を解決するには、最終的にデータ処理が必要です。したがって、すべての背後にあるオブジェクトは、実際にはすべてがデータであることを意味します。なぜなら、データを使用すると、適切なモデルを確立することで、対応する問題を解決できるからです。したがって、オブジェクトとデータを理解し、問題に対応する解決策を確立する方法は、プログラマーが持つ必要のあるコア思考能力です。

学術的には、データ構造とアルゴリズムと呼ばれます。

上記のすべてのアプリケーション例で、関数、モジュール、その他のテクノロジを含め、一部の式とフロー制御ステートメントを使用する理由は、実際には、割り当てや操作による操作など、いくつかの変数を処理するためです。 、そして最終的にデータ処理を実現し、必要な結果を返します。

プログラミングの真実は、見栄えの良いコードフローは単なる手段であり、データ処理が目標であるということです。

その中で、変数は最も基本的なデータであり、データを処理する方法はいわゆるアルゴリズムです。アルゴリズムはウィザードのようなもので、常に変化し、私たちの知恵に依存しています。しかし、データは現実的で客観的な存在です。現実世界のオブジェクトを便利に処理できるデータに適切に変換する方法は、私たちが実践する必要があることです。そのため、今日のコースでは、Pythonのデータ構造に焦点を当て始めました。

データ構造はその名前と同じです。Python構文の観点からは、単なる構造です。データを格納できるボックスであることが視覚的に理解できます。データ構造が異なれば、ボックスの種類も異なります。正確には、関連データのコレクションを保存するために使用されます。この説明には3つの意味があります。

1、 キーワード「一連の」は、データが一般に孤立して存在しないことを意味します。

2、 キーワード「関連」は、一緒に保存でき、関連性のあるデータを意味します。

3、 キーワード「** set **」は、数学の概念を借用して、データの存在方法が、追加、変更、削除、クエリ、並べ替え、マージなどの操作性であることを示しています。

Pythonがどのようなデータ構造を持っているか見てみましょう。

最も基本的なデータタイプとしてのユビキタス定数と変数に加えて、Pythonには4つの組み込みデータ構造があります。オブジェクトのデータ化とデータ処理を実現するための強力なツールとなるでしょう。それらを上手に使うことによってのみ、それらの美しさを実感することができます!

スペースの制限により、これら4つのデータ構造を4つのレッスンで個別に紹介します。今日は、リスト(リスト)に焦点を当てます

1、 リスト

Pythonのリスト(リスト)は、順序付けられたオブジェクトの柔軟なコレクションです。 **文字列はシーケンスであり、リストは明らかにシーケンスであると述べました。ただし、リストと文字列は異なります。 ****

1、 リストには任意の種類のオブジェクトを含めることができ、ネストすることもできます。リストには、オブジェクトの1つとして別のリストを含めることができます。

2、 リストには可変オブジェクトが含まれており、リアルタイムの変更(適切な変更)をサポートしています。

3、 リストは必要に応じて増減できます。

4、 リストの助けを借りて、スクリプトを介して任意の複雑なデータ情報をほぼ作成および処理できます。

**したがって、リストは非常に重要であり、アプリケーションは非常に一般的です。 ****

2、 リストを作成する

カンマ区切りのオブジェクトを角括弧のペアに入れると、リストが作成されます。

**説明:**リストが変数名に割り当てられている場合、この変数をリストの名前として使用します。 (基本的に、リストオブジェクトと変数名の間に参照が作成されます)、空のリストと単一アイテムのリストを定義する方法に注意してください。

3、 リストの値にアクセスします

リストはシーケンスであるため、シーケンスタイプのデータにはインデックスとインデックス対応値があります。したがって、添え字インデックスを使用してリスト内の値にアクセスできます。

次の例:list_1.py。

上記の例では、いわゆるスライス操作の概念を使用していることに注意してください。ここに説明を追加します:

(1)スライス操作は、シーケンスタイプデータ専用のセグメンテーション操作の一種です。

(2)スライスはシーケンスデータのセグメントです。

(3)スライスの方法、例としてリストデータを取り上げます:list [a:b:c]、スライスを取得します。このスライスはリストデータのaのインデックス位置から始まり、0の場合は省略できます。bの前で終了します。 、直接終了する場合は省略できます。cはスライス方向で、デフォルトの正の方向は省略できます。

(4)スライスを完全に理解するには、使用頻度の低いインデックス、つまり、シーケンスの最後からデフォルトで-1になる反転インデックスがあることも知っておく必要があります。

4、 リストの更新

再割り当て、append()メソッド、delステートメントを使用して、リストのデータ項目を変更または更新できます。

1、 インデックスを介して、指定された添え字の値を直接再割り当てします。

2、 append()メソッドを使用して、リストの最後に新しいアイテムを追加します。

3、 delステートメントを使用して、インデックスで指定された添え字を持つアイテムを削除します。

5、 リスト演算子

リストペア+と*の演算子は文字列に似ています。

PS:ほとんどすべてのシーケンス(文字列を含む)は+記号のマージ操作をサポートしていますが、プラス記号+は同じタイプの2つのシーケンスである必要があります。リストと文字列を一緒に追加することはできません!

6、 リスト操作の関数

(1)、len(list):リスト要素の数を返します。

(2)、max(list):リスト要素の最大値を返します。

(3)、min(list):リスト要素の最小値を返します

(4)、list(seq):タプルをリストに変換します。次のセクションではタプルを紹介します。

(5)、range(start、stop [、step]):一般的にforループで使用される整数のリストを作成します。

7、 リスト操作方法

(1)、list.append(obj):リストの最後に新しいオブジェクトを追加します。

(2)、list.count(obj):要素がリストに表示される回数をカウントします。

(3)、list.index(obj):リストから特定の値の最初に一致するアイテムのインデックス位置を見つけます。

(4)、list.insert(index、obj):オブジェクトをリストに挿入します(指定されたインデックス位置の前)。

(5)、list.pop(obj = list [-1]):リストから要素(デフォルトでは最後の要素)を削除し、要素の値を返します。

(6)、list.remove(obj):リスト内の値の最初の一致を削除します。

(7)、list.reverse():元のリストの逆の配置。

(8)、list.sort([func]):元のリストを並べ替えます。

(9)、list.extend(seq):リストの最後に別のシーケンス値を追加します。

8、 リストのマージと追加

1、 リストリストのマージ操作では、「+」記号を使用して、新しいリストを生成します。

2、 append(obj):リストの最後に新しいオブジェクトを追加し、新しいオブジェクトを使用して元のリストを拡張します。

3、 extend(seq):別の順序で値をリストの最後に追加し、元のリストを新しいリストで拡張します。

4、 以下の最後の例では、文字列が全体としてではなくシーケンスとして追加されていることに注意してください。

概要

このセクションでは、Pythonのデータ構造について深く理解し、リストとその作成方法および使用方法に焦点を当て始めました。

プレビュー

次のレッスンでは、引き続きPythonデータ構造を紹介します。tupleは、Pythonで最も一般的に使用されるデータ構造の1つでもあります。明らかに、リストとの類似点と相違点がありますが、データ処理に関しては、操作上の魅力がまったく異なります。

Recommended Posts

Python(18)入門
Python(9)入門
Python(8)入門
Python(4)入門
Python入門(2)
python-1入門
Python(14)入門
Python(7)の使用を開始する
Python(17)入門
Python(15)入門
Python(10)入門
Python(11)入門
Python(6)入門
Python(3)入門
Python(12)入門
Python(5)入門
Python入門(18歳以上)
Python(13)入門
Python(16)入門
PythonでNumpyを使い始める
Ubuntuを使い始める
Python-4入門:クラスとオブジェクト
python-2入門:関数と辞書
04.Python入門の条件付きステートメント
はじめにpython学習手順
Pythonをすばやく開始する方法
ヘッダー付きのpythonrequests.get
PythonでWeChatを再生する
PythonによるWebスクレイピング
pythonによる学生管理システムの実装
Centos6.7には、へのpythonアップグレードが付属しています
株で遊んでPythonを学んだ
グレーレベルの同時発生マトリックス(Pythonコードを使用)
CythonでPythonコードを高速化
Pythonで地球を作る方法
Pythonでデータ分析レポートを自動的に生成する
PythonでダイナミックカラーQRコードを作成する
Python | Hypothesisを使用してPythonコードをすばやくテストする
pythonでexcelテーブルを処理する方法