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

Pythonに組み込まれたデータ構造


Pythonには、いくつかの単純な組み込み型があります。 int、float、complex、str、bool。また、いくつかの複雑な組み込みタイプがあります。リスト、ディクト、タプル、セット。

リスト −リストはPythonのデータ型の1つです。リストはオブジェクトのコレクションであり、順序付けられて変更可能です。 Pythonでは、角かっこ[]で記述されています。

リストの作成方法

my_list=["car","bus","truck"]
print(my_list)

ListItemsにアクセスする方法

インデックス番号を参照することでリストアイテムにアクセスできます:

位置1のアイテムを返します。

my_list=["car","bus","truck"]
print(my_list[1])

リスト値を変更する方法

インデックス番号を使用して、アイテムの値を変更できます。

my_list=["car","bus","truck"]
my_list[2] = "van"
# The values aremutable
print(my_list)

リストを介してループを適用する方法

forループを使用してリストアイテムをループできます。

my_list=["car","bus","truck"]
for x in my_list:
   print(x)

リストのいくつかのメソッド

リストメソッド

Pythonにはいくつかの組み込みメソッドがあり、リストでこれらのメソッドを使用できます。

メソッドと説明
Sr.No
1

append()

このメソッドは、リストの最後に要素を追加するために使用されます

2

clear()

このメソッドは、リストからすべての要素を削除するために使用されます

3

copy()

このメソッドは、リストのコピーを返すために使用されます

4

count()

このメソッドは、指定された値を持つ要素の数を返すために使用されます

5

extend()

このメソッドは、リストの要素(または反復可能なもの)を現在のリストの最後に追加するために使用されます

6

index()

このメソッドは、指定された値を持つ最初の要素のインデックスを返すために使用されます

7

insert()

このメソッドは、指定された位置に要素を追加するために使用されます

8

pop()

このメソッドは、指定された位置にある要素を削除するために使用されます

9

remove()

このメソッドは、指定された値のアイテムを削除するために使用されます

10

reverse()

この方法は、リストの順序を逆にするために使用されます

11

sort()

このメソッドは、リストを並べ替えるために使用されます

口述 −ディクショナリは順序付けられていない要素のセットであり、ディクショナリは位置ではなくキーとともに使用されます。辞書はPythonの抽象データ型です。辞書には2つのパラメーターがあり、1つはキーで、もう1つは値です。すべてのキーは値に関連付けられているため、辞書は連想配列であると言えます。

>>> student = {"Aadrika":001, "Adwaita":009, "Sakya":011, "Sanj":022}

ここでは学生の記録を使用します。必要なのは、学生の名前をインデックスとして使用することだけです。

>>> student = {"Aadrika":001, "Adwaita":009, "Sakya":011, "Sanj":022}
>>> student["Adwaita"]
009

これらの例では、辞書は学生であり、辞書に順序があります。最初の要素が「Aadrika」であるように、2番目の要素は「Adwaita」というように続きます。しかし、辞書には順序はありません。これが、学生辞書の出力が「元の順序」を反映していない理由です。

要素を追加したい場合。

>>> student ["Krishna"] = 111
>>> student
student = {"Aadrika":001, "Adwaita":009, "Sakya":011, "Sanj":022,"Krishna":111}

したがって、最初は辞書が空で、その後、増分プロセスで1つずつ値を取ります。

タプル −タプルはPythonのオブジェクトのセットです。カンマ( "、")で区切られます。インデックス付けに関しては、タプルはリストに似ています。主にタプルは不変です。これらも比較可能でハッシュ可能であるため、リストを簡単に並べ替えることができ、Python辞書ではタプルがキー値として使用されます。

タプルの作成方法

my_tuple={"car","bus","truck"}
print(my_tuple)

タプルアイテムへのアクセス方法

インデックス番号を参照することでタプルアイテムにアクセスできます。

アイテムを位置1に戻します。

my_tuple={"car","bus","truck"}
print(my_tuple[1])

タプル値を変更する方法

タプルが作成されると、その値を変更することはできません。タプルは不変です。

タプルの値を変更することはできません。

my_tuple={"car","bus","truck"}
my_tuple[3] = "van"
# The values are unchangeable
print(my_tuple)

タプルを介してループを適用する方法

forループを使用してタプルアイテムをループできます。

my_tuple={"car","bus","truck"}
for x in my_tuple:
   print(x)

タプルメソッド

Pythonには、count()とindex()の2つの組み込みメソッドがあります。これらのメソッドはタプルで使用できます。

count() このメソッドは、指定された値がタプルで発生する回数を返します。
index() このメソッドは、指定された値のタプルを検索し、それが見つかった場所の位置を返します

セット −数学では、セットは個別のオブジェクトのコレクションです。たとえば、ここで3つの数字を想定すると、2、4、6は別々に考えると別個のオブジェクトですが、まとめて考えると、{2,4,6}と書かれたサイズ3の単一のセットを形成します。

Pythonでは、setは非常に便利です。これは、特定の要素がsetに存在するか、簡単にチェックできないため、高度に最適化されたメソッドであるためです。

セットのさまざまな操作

セットのメソッド

1. add(x)メソッド:要素がリストに存在しない場合は、リストに追加されます。

A = {"AA", "BB", "CC"}
A.add("DD") 
->  add DD in A set.

2. union(s)メソッド:このメソッドは、2つのセットの和集合を返します。和集合演算には、「|」演算子を使用します。

A = {"AA", "BB", "CC"}
B = {"MM", "NN"}
Z = A.union(B)
OR
Z = A|B
-> Set Z will have elements of both A and B

3.intersect(s)メソッド:このメソッドは、2つのセットの共通部分を返します。この場合、「&」演算子も使用できます。

S = A.intersection(B)
-> Set S will contain the common elements of A and B

4. Difference(s)メソッド:このメソッドは、最初のセットに属しているが2番目のセットには属していないセット要素を返します。ここでは「-」演算子を使用できます。

S = A.difference(B)
OR
S = A – B
-> Set S  will have all the elements that are in A but not B

5. clear()メソッド:セット全体をクリアします。

B.clear()
-> Clears B set

セットの演算子

セットとフリーズセットは次の演算子をサポートします

key in s #封じ込めチェック
キーがsにありません #非封じ込めチェック
s1 ==s2 #2つのセットは等しい
s1!=s2 #2つのセットが等しくない
s1 <=s2 #s1はs2のサブセット、s1 =s2#最初のセットは2番目のスーパーセット
s1> s2 #最初のセットは2番目のスーパーセットです
s1 | s2 #2つのセットの和集合
s1&s2 #2つのセットの共通部分
s1 – s2 #最初のセットの要素のセットですが、2番目のセットではありません
s1 ˆ s2 #最初のセットまたは2番目のセットの正確に1つの要素のセット

  1. Pythonで不変のデータ構造を実装する方法は?

    問題 Pythonで不変のデータ構造を実装する必要があります。 はじめに.. 不変のデータ構造は、複数の人が並列プログラミングで同時にデータを変更するのを防ぎたい場合に非常に便利です。可変データ構造(配列など)はいつでも変更できますが、不変データ構造は変更できません。 その方法.. 不変および可変のデータ構造を処理する方法を段階的に説明します。 例 # STEP 01 - Create a Mutable array. # Define an array atp_players = ['Murray', 'Nadal', 'Djokovic

  2. データ構造の隣接リスト

    グラフは非線形のデータ構造です。これは、ノードを使用したデータと、エッジを使用したそれらの関係を表します。グラフGには2つのセクションがあります。頂点とエッジ。頂点はセットVを使用して表され、エッジはセットEとして表されます。したがって、グラフ表記はG(V、E)です。アイデアを得るための1つの例を見てみましょう。 このグラフには、5つの頂点と5つのエッジがあります。エッジが方向付けられます。例として、頂点BとDを接続するエッジを選択した場合、ソース頂点はBで、デスティネーションはDです。したがって、BをDに移動することはできますが、DからBに移動することはできません。 グラフは非線形