皆さんこんにちは、私の名前はニンイーです。
辞書は Python のデータ型であり、中括弧 { } を使用してデータを囲み、データを英語のカンマで区切ります。
辞書には、あらゆる種類のオブジェクトを格納できます。各要素は、キー:値の 2 つの部分で構成されます。通常、これをキーと値のペアと呼びます。
キーはキーを参照し、値は値を参照します。これらは常にペアで表示され、形式は次のとおりです。
d = {key1 : value1, key2 : value2 }
1. キーと値の特徴
(1) キーは一意ですが、値は一意である必要はありません。
正しい例:
d = {"name1":"宁一","name2":"宁一"}
print(d)
# 输出 {'name1': '宁一', 'name2': '宁一'}
エラーの例:
d = {"name":"宁一","name":"喵宁"}
print(d)
# 输出 {'name': '喵宁'}
辞書では、同じキーが 2 回出現することは許可されていません。この定義ではエラーは報告されませんが、前のキーは後続のキーによって上書きされます。
(2) キーは不変でなければならず、値は任意のデータ型にすることができます。
キーは、数値、文字列、タプルなどのデータ型を取得できます。
値には、文字列、数値、リスト、タプル、辞書、セットなど、任意のデータ型を使用できます。
上記のデータ タイプを理解するには、ホームページにアクセスしてレッスン 5 を参照してください。
正しい例:
# 值可以是列表、字典等
d = {'name':["宁一","喵宁"]}
d = {'name':{"name1":"宁一","name2":"喵宁"}}
エラーの例:
# 将列表等可变数据类型放在key的位置是错误的
d = {["宁一", "喵宁"]:"name"}
#报错 TypeError: unhashable type: 'list'
# 换成元组这种不可变数据类型就可以
d = {("宁一", "喵宁"):"name"}
2. 辞書リストの違い
辞書とリストは、後のプログラミングでよく使用されるデータ型であり、複数のデータを格納できます。辞書とリストを定義しましょう。
#字典,命名为d,字典名字是自定义的。
d = {"name":"宁一","age":"1995-07-12","score":100}
#列表
l = ["宁一","1995-07-12",100]
それらの違いは次のとおりです。
(1) 検索方法
上記の「名前」「年齢」「得点」などの「キー」をもとに辞書を検索します。
d["name"]
# 输出 '宁一'
リストは 0 1 2 などの添字に基づいて検索されます。
l[0]
# 输出 '宁一'
(2) 辞書には順序がありませんが、リストには順序があります。
辞書内の要素は、検索結果に影響を与えることなく、自由に変更できます。
リスト内の要素を自由に変更することはできません。変更しないと、検索結果に影響します。
たとえば、上で定義した辞書 d とリスト l です。最初の 2 つの要素が入れ替わった場合の検索結果を見てみましょう。
d["name"]
# 输出 '宁一'
l[0]
# 输出 "1995-07-12"
3. 辞書要素を変更する
辞書内の要素をキーによって変更します。上で定義した辞書 d の操作を継続します。
# 将key为"name"对应的值改成"喵宁"
d["name"] = "喵宁"
# 将key为"age"对应的值改成26
d["age"] =26
print(d)
# 输出 {'name': '喵宁', 'age': 26, 'score': 100}
4. 辞書または要素を削除する
(1) 辞書内の要素を削除する
del メソッドを使用してキーを入力し、その後に角括弧 [] で囲まれた辞書名を入力することで辞書要素を削除できます。
# 删除"name":"宁一"这个键值对
del d["name"]
print(d)
# 输出 {'age': 26, 'score': 100}
(2) 辞書内のすべての要素をクリアします
辞書名の後にclear()関数を追加すると、辞書がクリアされます。クリア後も辞書は残っていますが、要素は存在しないので注意してください。
d.clear()
print(d)
# 输出 {}
(3) 辞書の削除
または、del メソッドを使用し、その後に辞書名を直接追加すると、辞書は直接削除されます。これは、上記の clear() 関数とは区別する必要があります。
#删除字典
del d
print(d)
# 报错 NameError: name 'd' is not defined
5. その他の共通操作
(1)len()の長さ
辞書内のキーと値のペアの数を数えます。
d.len()
# 输出 3
(2)キー()
すべてのキーを含むリストを返します。
d.keys()
# 输出 ['name', 'age', 'score']
(3)値()
すべての値を含むリストを返します。
d.values()
# 输出 ['宁一', '1995-07-12', 100]
(4)項目()
辞書をリストに変換します。
d.items()
# 输出 [('name', '宁一'), ('age', '1995-07-12'), ('score', 100)]
クリックしてフォローして、迷うことなく Python を始めましょう~