この章ではディクショナリを複製する2つの方法を紹介します。
元のディクショナリから同じ要素のディクショナリを作成します。
では1つ目の方法から説明します。 ディクショナリを複製するには以下の構文(copy)を使います。 neme2はnameと同じ要素を取得できたことになります。
結果は以下の通りです。
2つ目の方法を紹介します。 ディクショナリを複製するには以下の構文(dict)を使います。 neme2はnameと同じ要素を取得できたことになります。
結果は以下の通りです。
カテゴリー: Python
ディクショナリのキーの存在の有無を確認しよう
この章ではディクショナリにキーが存在するかどうかを確認する3種類の方法について説明します。
では例をみてみましょう。 1つ目はhas_keyメソッドを使います。 この形式は指定したキーが存在すればtrue、存在しなければfalseを取得することができます。
trueとfalseについては「条件分岐ifの公式1」で説明します。
2つ目はin演算子を使います。 この形式は指定したキーが存在すればtrue、存在しなければfalseを得ることが出来ます。
3つ目はnot in演算子を使います。 この形式は指定したキーが存在すればfalse、存在しなければtureを得ることが出来ます。
結果は以下の通りです。
ディクショナリからキー、値を取り出そう
この章ではディクショナリから「キーだけ」もしくは「値だけ」を取り出す方法について説明します。
では例をみてみましょう。 「キーだけ」をすべて取り出したい場合はkeysメソッドを使って以下の構文を使います。
取り出されたデータはリストで返されます。 「値だけ」をすべて取り出したい場合はvaluesメソッドを使って以下の構文を使います。
取り出されたデータはリストで返されます。 上の例では取り出したものを変数に入れない方法と変数に入れる方法の2種類で書いていますが、取り出したものを何かに使用したい場合には変数に入れてください。
結果は次の通りです。 先ほどの例は「キーだけ」もしくは「値だけ」を取り出しましたが、キーと値を両方取得するにはitemsメソッドを使用します。
では例をみてみましょう。 ディクショナリのキーと値を両方取得したい場合は以下の構文を使います。 itemsメソッドの戻り値はリストとして取得しますが、リストの各要素はタプルになります。
結果は次の通りです。
ディクショナリの要素を削除しよう
この章ではディクショナリの要素を削除する方法を4つ紹介します。 ディクショナリの指定した要素を削除するには以下の構文(del)を使います。 この例ではキーにを指定していますが、これによりのペアは削除されます。
結果は次の通りです。
では以下の例で2つ目の方法を紹介します。 すべての要素を削除したい場合は以下の構文(clear)を使います。 clearメソッドはすべての要素を削除する機能があります。
結果は次の通りです。
では以下の例で3つ目の方法を紹介します。 ディクショナリの中の指定した要素を削除したい場合は以下の構文(pop)を使います。 この例ではpopメソッドの引数にを指定していますが、これによりのペアは削除されます。
削除した値を受け取りたい場合はaのような変数を用意して、受け取ることが出来ます。
この例のaには削除した値である34が代入されています。
結果は次の通りです。
では次の例をみてみましょう。 popメソッドで削除する予定のキーを指定したにも関わらず、そのキーが存在しない場合はカンマで区切った2つ目の引数(第2引数)で 指定した値を返すことが出来ます。 この例ではというキーは存在しないので、aには98が入ります。
結果は98です。
では以下の例で4つ目の方法を紹介します。
次はディクショナリの任意の要素を削除する方法について説明します
では例をみてみましょう。 ディクショナリの任意の要素を削除するには以下の構文(popitem)を使います。 popitemメソッドはランダムに要素を削除する機能があります。
つまり、削除される要素はランダムに決定されるので、どれが削除されるかわかりません。
結果はが削除されましたので以下の通りです。 popitemで削除した要素を受け取りたい場合はタプルで受け取ることが出来ますので、次の例で説明します。 タプルであるaで削除したものを受け取っています。
結果はタプル形式で取得できます。
ディクショナリについて知ろう
この章ではディクショナリについて説明します。
ディクショナリとはリストと似ていて、複数のデータをまとめて入れることができます。
リストとの違いはリストはデータの管理を添え字で行いますが、ディクショナリは文字列であるキーで行います。
つまり、次の構文をみていただくと分かりますが、ディクショナリはキーと関連づけて値を設定します。
ディクショナリの基本構文は次の通りです。 では例をみてみましょう。 添え字の代わりにキーを使用します。
要素全体を{ }で囲んで、その中にキーと値の間を「:」で区切って書いていきます。
キーとはの部分のことを言います。
値とはの部分のことを言います。
ディクショナリとはキーと値がセットになって結びついているリストみたいなものですが、リストのように要素間に順番はありません。
リストの場合は添え字により、0から順番が付いています。
このディクショナリを使うと、ただ単に添え字でデータを管理しているのとは違って、紺野さんは34歳をのように関連付けて書けるので解りやすく管理できます。
ディクショナリの値を取得したい場合は以下の形式で書きます。 ですので、この例のは34 を出力します。
では次の例をみてみましょう。 ディクショナリの中にある値を変更したい場合(上書き)は以下の構文で書きます。 この構文で元々あるキーに新たな値を設定します。この例では紺野の34という値は上書きされて、45になります。
結果は45です。
次の例をみてみましょう。 上書きするのではなく、ディクショナリに新たなキーと値を入れたい場合は以下の構文を使います。 この例ではというキーを 新たに作成して、21という値を代入しています。
結果は21です。
次にディクショナリに他のディクショナリを入れる方法について説明します。
では例をみてみましょう。 元のディクショナリに他のディクショナリを入れたい場合は以下の構文(update)を使います。 この例では元のディクショナリがname、追加のディクショナリがname2です。
元のディクショナリのキーと同じキーが追加するディクショナリの中にある場合は上書きされます。
結果は次の通りです。
次はディクショナリの要素の数を取得する方法について説明します。
では例をみてみましょう。 ディクショナリの要素の数を取得するには以下の構文(len)を使います。 結果は3です。
タプルをソートしよう
この章ではタプルをソートする方法について説明します。
タプルをソートする場合はタプルをリストに変換しなくてはいけません。
その変換する方法を次の例で説明します。 タプルをリストに変換するには以下の構文を使います。 listを使って文字列をリストに変換する方法については説明しましたが、この他にもlistはタプルをリストに変換することもできます。
タプルをリストにした新たなnum2を作成したので、これを元にソートを行うことが可能です。
ちなみにはと書いても同じことです。
結果は以下の通りです。 タプルを直接ソートすると次のようにエラーが出ますので、気を付けてください。 これを実行するとエラーが出ます。
次はリストからタプルを作成する方法について説明します。
では例をみてみましょう。 リストをタプルに変換するには以下の構文を使います。 タプルに変わったのでのような操作はできません。
タプルは再度、値を入れることができないことは説明しました。
結果は次の通りです。 文字列をtupleの引数に指定すると文字列の1文字1文字をタプルの要素にすることが出来ますので、次の例で紹介します。 この構文で文字列の1文字1文字をタプルに変更することが出来ます。
以下のように数値型からはタプルを作成できません。 結果は以下の通りです。
タプルについて知ろう
この章ではタプルについて説明します。
タプルとはリストと同じく、複数のデータをまとめて扱うことができますが、リストとの違いは一度データを入れてしまったら、後から変更することができないことです。〇要素をカンマ区切りで入れていきます。
〇タプルの要素には違う種類の型も混ぜて入れることが出来ます。例えば以下のように数値型と文字列型を混ぜて入れることが出来ます。 では例をみてみましょう。 タプルの各要素を出力する場合はリストと同じで添え字を使います。
と言う形式で指定したタプルの中身を取得することが出来ます。
結果は次の通りです。 では次に進みます。
先ほど、リストとの違いは一度データを入れてしまったら、後から変更することが出来ないと言いましたが、次の例で説明します。 このようにタプルの要素に改めてデータを入れて出力しようとすると以下のようなエラーが出ますので注意してください。 添え字のマイナス指定もリストと同じくできますので、次の例で説明します。 添え字のマイナス指定の場合はタプルの末尾からと数えていきます。リストでも添え字のマイナス指定ができたことを思い出してください。
結果は次の通りです。
では次の例をみてみましょう。 以下の構文はリストの章でも説明しましたが、タプルでも使うことができます。 この構文で開始位置の要素から終了位置の一つ手前の要素までを取得することが出来ます。
結果は次の通りです。
次はタプルの要素が何個あるかを調べる方法について説明します。
では例をみてみましょう。 タプルの要素が何個あるのかを調べるには以下の構文を使用します。 len関数は文字列の長さを調べたり、リストの要素数を調べることができることは説明しましたが、タプルでも使うことができます。
結果は6です。
次の例はタプルとタプルを結合する方法について説明します。
では例をみてみましょう。 この構文でタプル2とタプル3を足した新たなタプル1を作成することができます。
結果は次の通りです。
リストを操作する他の機能を知ろう
この章ではリストを操作する他の機能について説明します。
初めにリストの要素数を取得する方法について説明します。
では例をみてみましょう。 リストの要素数を取得する構文は以下の通りです。 len関数ではリストの要素の数を取得することが出来ます。
この例では猫からネズミまで要素は5つありますので結果は5です。
戻り値をaなどの変数に入れてもいいです。 次は指定した要素の添え字を取得する方法について説明します。
では例をみてみましょう。 指定した要素の添え字を取得する構文は以下の通りです。 indexメソッドは同じ要素が複数ある場合には1番前から検索して、最初に見つかった要素に該当する添え字を取得します。
は2つありますが、最初に見つかった要素に該当する添え字を取得するので結果は0です。
次はリストの中で同じ要素が何個あるかを確認する方法について説明します。
では例をみてみましょう。 リストの中で同じ要素が何個あるのかを確認する構文は以下の通りです。 countメソッドはリストの中で同じ要素が何個あるのかを取得します。
という要素は2つありますので、結果は2です。
次はリストの中に指定した要素が存在するのかを確認する方法について説明します。
では例をみてみましょう。 リストの中に指定した要素が存在するか確認するには以下の構文を使います。 この形式はリストの中に指定した要素が含まれていれば true,含まれていなければfalseを返します。
このtrueや falseについては「条件分岐ifの公式1」で説明しますので、今は分からなくても結構です。
もう1つ、他の構文を紹介します。 この構文はリストの中に指定した要素が含まれていれば false,含まれていなければtrueを返します。
結果は以下の通りです。
次はリストの順番を並び変える方法について説明します。
では例をみてみましょう。 リストの順番を並び替えるには以下の構文を使います。 sortメソッドはリストの中身を並び替えます。
数値の場合は小さい方から大きい方へ、文字列の場合は文字コードの順番で並び替えます。
アルファベットの場合にはアルファベット順に並び替えますが、小文字より大文字の方が前に並びます。
結果は次の通りです。
次の例はリストの中の要素を単純に逆にする方法について説明します。
では例をみてみましょう。 リストの中の要素を逆するには以下の構文を使います。 reverseメソッドはリストの中の要素を単純に逆にします。
結果は以下の通りです。
次は文字列からリストを作成する方法について説明します。
では例をみてみましょう。
次の構文(list)で文字列からリストを作成する事が出来ます。 結果は次の通りですが、リストのカッコが付いているのが分かります。
リストの要素を削除する方法を知ろう
この章ではリストの要素を削除する方法について説明します。
削除する方法は4つあるので、順に説明していきます。 リストの要素を削除する方法の1つ目はremoveメソッドを使います。 removeメソッドは指定したリストの要素を削除する機能があります。
この例ではを指定しているので、この要素を削除します。
しかし、この例のように同じ要素が2つある場合は前の要素から削除します。
結果は以下の通りです。 リストの要素を削除する方法の2つ目はdel文を使います。 del文は指定したリストの要素を削除する機能があります。
例では0番目の要素のを指定しているので、この要素を削除します。
結果は以下の通りです。 リストの要素を削除する方法の3つ目はpopメソッドを使います。 popメソッドは指定した添え字に相当するデータを削除します。
例では0番目の要素のを指定しているので、この要素を削除します。
添え字を省略すると末尾の要素が削除されます。
結果は以下の通りです。 popメソッドの添え字を省略した例もみてみましょう。 添え字を省略すると末尾の要素が削除されますので、結果は以下の通りです。
次の例をみてみましょう。 リストの要素を削除する方法の4つ目はカラのリストを使います。 開始位置から終了位置の1つ手前までの要素に対して、カラのリストを入れます。
例ではに対して、カラのリストを入れているので、その要素は削除されます。
結果は以下の通りです。
リストの変更、追加する方法を知ろう
この章ではリストの要素を変更する方法と新しい要素を追加する方法について説明します。
リストの要素を変更する方法については少しだけ説明しましたが、この章では詳しく説明します。
では例をみてみましょう。 リストの要素を変更するには次の構文で書きます。 リスト名の横に変更したい要素に該当する添え字を記述し、新たなデータを代入します。
上の例では犬をシマウマに変更しています。
結果は次の通りです。
次の例はリストの範囲を指定して新しいリストを代入する方法です。 開始位置と終了位置は添え字で指定してください。
また終了位置は指定した番号の1つ手前までを指します。 結果は以下の通りです。
次の例をみてみましょう。 では説明を始めます。 上のように範囲指定した数と新たな要素の数は一致させる必要はありません。
例の場合は範囲指定した2つ([0:2])のリストに対して、1つの新しいリストを代入しています。
結果は以下の通りです。
次の例をみてみましょう。 では説明を始めます。 上の例は終了位置を省略した形式です。 終了位置を省略すると開始位置で指定した添え字から最後の添え字までを指定したのと同じ意味になります。 結果は次の通りです。
次の例をみてみましょう。 では説明を始めます。 上の例は開始位置を省略した形式です。 開始位置を省略すると先頭から終了位置で指定した添え字の1つ前までを指定したのと同じ意味になります。
つまり、と同じ意味になります。
そのという新たなリストを代入しているので、結果は次の通りになります。
次の例をみてみましょう。 では説明を始めます。 この構文でリストのすべての要素に新たなリストを入れることができます。
つまり「リスト名[:]」はすべてのリストの要素を意味するのでこの記述は以下のリストと同じ意味になります。 そこにを代入しているので、結果は次の通りになります。
次の例をみてみましょう。 この構文でリストの末尾に新たな要素が追加されていきます。
appendはメソッドと呼ばれています。
メソッドは関数と同じで入力したデータに基づいて決められた処理を行い、戻り値という結果を返す機能を持っています。
つまり、メソッドと関数は同じ機能があります。
メソッドと関数の違いにこだわる必要はありません。
この例では3回appendでデータを追加していますが、その都度リストの末尾にデータが追加されていきます。
結果は以下の通りです。
次の例をみてみましょう。 この構文で添え字で指定した位置に新たな要素が追加されます。
この例では0番目の位置、つまり先頭にシマウマを入れていますので、元のリストの添え字は1つ後にずれます。
結果は次の通りです。
次の例をみてみましょう。 この構文でリストの末尾に新たなリストが追加されます。
次の例をみてみましょう。
この構文でリストとリストを連結させて、新たなリストを作成します。
この例ではanimalとanimal2を「+」で連結させてanimal3という新しいリストを作成しています。
結果は次の通りです。