Pythonの辞書データの種類と基本的な動作[Pythonの入門ガイド]

  括弧の対を含むコンマで区切られたペアの間で、 - 「キー値」、「値キー」の構成セット - Pythonの辞書は、辞書は、データの重要な種類です。辞書「値」を参照する「キー」。

辞書を作成します。

  次のように作成した辞書形式は次のとおりです。

辞書= {KEY1:値1、KEY2:値2、...}

  次のインスタンスを作成します。

{} =辞書空の辞書
dict1 = { ' Lesson1 ':' Pythonの'、' Lesson2 ':' のJava '、' Lesson3 ':' シェル')} #の多元素辞書dict2 = { ' Lesson1 ':' のPython '、Lesson2 ' 'のJava ' 「Lesson3 「シェル)}と#注異なるdict1(レッスン最初の文字の小文字)、キー辞書は大文字と小文字が区別されるので

  説明:辞書のキーは大文字と小文字が区別されます。

辞書の値を取得します。

    アクセス辞書の要素は、二つの方法があります。value引数に対応するキー値によって取得した第1のタイプは、第二は、辞書機能の取得により取得されました()。

   (1)キー値に対応する値の値を取得します。構文は次のとおりです。値=辞書[キー]。次のように具体的な例としては、以下のとおりです。

= {Dict1 >>> ' Lesson1 ':' のPython ' } >>> dict1 [ ' Lesson1 ' ] ' パイソン' >>> dict1 [ ' Lesson2 ' ]#該当するキーを、トレースバック(最新KeyError例外エラーを返しラストコール):ファイル" <STDIN> "、1行目、。<Module1の>でKeyError例外:' Lesson2 '

  (2)関数の値を取得するためにGETした値()、 GET()関数は、次の形式を使用します。

dict.get(キー【、DEFAULT_VALUE])

  説明:キーは辞書のキーパラメータであり、パラメータはDEFAULT_VALUEのget()の戻り値は、デフォルト値なしとして使用することができます。DEFAULT_VALUEは、パラメータ値を指定した場合、パラメータはキーリスト辞書のキーのキーを示している場合、値に対応する値が返されない場合は、所定の値がDEFAULT_VALUE返されます。次のように具体的な例としては、以下のとおりです。

>>> dict1 = { ' Lesson1 ':' のPython ' } >>> dict1.get(' Lesson1 ' ' Pythonの' >>> dict1.get(' Lesson2 ' )>>> dict1.get(' Lesson2 '、' Perlの' ' のPerl '

辞書の要素を追加します。

  方法A:直接添加する方法は、次の形式を使用して:

辞書[キー] =値

  (:値キー)レコードを、キー、キー、キーのリストが辞書辞書にない場合は、辞書の辞書が追加されます。キーがリストに既にある場合は、キー値に対応する値キーが変更されます。

【のdict ' Lesson3 '] = ' Perlの'

  例えば、存在しないLesson3辞書辞書と呼ばれる文字列のキーを想定し、次に直接加えます。それがすでに存在する場合は、Perlの文字列値が更新されます。例としては、次のとおりです:

>>> dict1 = { ' Lesson1 ':' のPython ' } >>> dict1 [ ' Lesson3 '] = ' Perlの' >>> dict1 { ' Lesson3 ':' パール'、' Lesson1 ':' のPython ' } >> > dict1 = { ' Lesson3 ':' のPython ' } >>> dict1 [ ' Lesson3 '] = ' Perlの' >>> dict1 { [Lesson3 ':' Perlの「}

  方法2:は、SetDefaultを呼び出すことによって()関数法。形式は次のとおりです。

dict.setdefault(キー【、DEFAULT_VALUE])

  辞書のキーで、キーインデックスリスト、戻り値に対応する値であれば、キーがリストにない場合は、辞書内の新しいインデックスキー値、およびDEFAULT_VALUEフィードバック値、デフォルト値なしを追加します。例は次のとおりです。

>>> dict1 = { ' Lesson1 ':' のPython ' } >>> dict1.setdefault(' Lesson1 ' ' Pythonの' >>> dict1.setdefault(' Lesson2 ' )>>> dict1 { ' Lesson2 ':なし、' Lesson1 ':' のPython ' } >>> dict1.setdefault(' Lesson3 '、' シェル' ' シェル' >>> dict1 { [Lesson3 ':' シェル' 'Lesson2 ':なし、' Lesson1 ':' Pythonの「}

すべてのキー、値またはキーVALUキーと値のペアのディクショナリを取得します

「値」要素- (1)すべての「キー」の辞書を取得します。)(辞書項目を呼び出すことによって実装は、の(キー、値)タプルのリストを返します。例としては、次のとおりです:

>>> dict1 = { ' Lesson1 ':' Pythonの'、' Lesson2 ':' のJava '、' Lesson3 ':' シェル' } >>> dict1.items()(' Lesson3 '、' シェル')、(' Lesson2 '、' ジャワ')、(' Lesson1 '、' Pythonの')]

リストキー成分(2)は、辞書を得ました。辞書法キーを呼び出すことによって、()。例としては、次のとおりです:

>>> dict1 = { ' Lesson1 ':' Pythonの'、' Lesson2 ':' のJava '、' Lesson3 ':' シェル' } >>> dict1.keys()' Lesson3 '、' Lesson2 '、' Lesson1 ' ]

(3)取得する辞書からなるリスト値。辞書法値を呼び出すことによって、()。例としては、次のとおりです:

>>> dict1 = { ' Lesson1 ':' Pythonの'、' Lesson2 ':' のJava '、' Lesson3 ':' シェル' } >>> dict1.values()' シェル'、' のJava '、' パイソン' ]

指定されたキーが辞書に存在するかどうかを決定します

  辞書kの重要な要素があるかどうかを決定します。辞書has_key()メソッドを呼び出すことによって。例としては、次のとおりです:

>>> dict1 = {'Lesson1': 'Python', 'Lesson2': 'Java', 'Lesson3': 'Shell'} >>> dict1.has_key('Lesson1') True >>> dict1.has_key('Lesson4') False

删除字典元素。

  方法一:通过调用内置函数del实现。实例如下:

>>> dict1 = {'Lesson1': 'Python', 'Lesson2': 'Java', 'Lesson3': 'Shell'} >>> del dict1['Lesson1'] >>> dict1 {'Lesson3': 'Shell', 'Lesson2': 'Java'}

  方法二:通过调用字典的pop()函数实现。pop()函数格式如下:

dict.pop(key[,default_value])

    pop()函数必须指定参数索引key才能删除对应的值。如果索引key在字典key列表中,则返回索引key对应的value值。如果不存在,则返回预先设置的default_value值,如果未设置,会爬出KeyError异常信息。实例如下:

>>> dict1 = {'Lesson1': 'Python', 'Lesson2': 'Java', 'Lesson3': 'Shell'} >>> dict1.pop('Lesson3') 'Shell' >>> dict1 {'Lesson2': 'Java', 'Lesson1': 'Python'} >>> dict1.pop('Lesson3','Perl') 'Perl'

  方法三:调用字典的clear()函数,清除字典的所有内容。实例如下:

>>> dict1 = {'Lesson1': 'Python', 'Lesson2': 'Java', 'Lesson3': 'Shell'} >>> dict1.clear() >>> dict1 {}

字典排序

  字典的排序可以通过使用sorted()函数实现,实例如下:

>>> dict = {'2':"Python",'1':"Java",'3':"C++"} >>> sorted(dict.items(),key=lambda d:d[0]) [('1', 'Java'), ('2', 'Python'), ('3', 'C++')] >>> sorted(dict.items(),key=lambda d:d[1]) [('3', 'C++'), ('1', 'Java'), ('2', 'Python')]

 

おすすめ

転載: www.cnblogs.com/linyfeng/p/11736022.html