すべてのコメントを読む、または予期しない配信を持っています。レビューを感謝し、各小パートナーを補足します。
多くの手が〜光を作ります
今日のノートが---- pythonで辞書をデータオブジェクトを記録することです!
ノートリストやタプルのタプルのリストの前で話し、それらはすべて同じオブジェクトを格納するために使用することができますされています。リストファイルは、読み込みタプルのタプルをサポートするために、読み取りと書き込みをサポートするように変更されて変更することはできません。しかし、彼らは共通の特性を持って、個々の要素の値は、モード動作の対応する要素(インデックス要素)を見つけるためにインデックスを経由した後、リストやタプルに格納されています。
だから、dictionaryt辞書それ?それはどのようなデータ構造ですか?
この辞書データ構造は、マッピングと呼ばれています。値(値)は、特に辞書順ではなく、これらの値は、特定の鍵(キー)に格納されています。私たちは、キー(鍵)から対応する値を見つけることができます。キー(キー)は、数値、文字列などタプルことができます。
それはアルファベットに対応する単語を通過し、同様に、その理解だ、と新華辞書。~~~~このようなマッピング手段です。あまりにも真剣に。
我々は、次を見ては、空の辞書を作成します。
1 dict_1 = {} #これは空の辞書{}であり、彼は可変dict_1とポイント。
私たちは、データディクショナリを作成:19の下に、デジタルオブジェクトを。引用符は文字列オブジェクトです。具体的なご自身の使用を見ていた、辞書がサポートされています~~~~
1 dict_1 = { ' 名前':' 蕭紅'、' 年齢':19 ' iPhone ':' 110 ' } #データ・ディクショナリの第一のタイプの作成 2 3。 4。 dict_2 = { ' 蕭紅' { ' 名前':' 蕭紅' ' 年齢':19、' iPhone ':' 110 " }、 #辞書データの二種類を作成するだけでなく、ああ作成することができます 5。 「暁には6月」:{ 「名」:「シャオ6月には」、「年齢」:16、「iPhone 」:「117 」 }}
私たちは、それを見つけた:第二の辞書を作成し、そのキー(鍵)を、対応する値(値)は、別のクラスの辞書です。実際には、キー(鍵)をディクショナリオブジェクトは、オブジェクトの多くの種類をサポートし、
検索の対象は、最高の効率であるため、最も一般的なタイプは、キー(キー)として数値と文字列です。
私はあなたが上記の構造に従って、このような辞書マッピング構造を作成する必要があります信じています。次は新しい辞書を作成、追加、変更、削除操作。
空の辞書には、オブジェクトを追加します。
1 dict_1 = {} #空の辞書作成 2 。3 dict_1 [ ' 名前' ] = ' 暁' #変数名[キー] = [値]、直接割り当ては、オブジェクトを追加 。4 dict_1 [1.34] = ' ABC ' 。5 dict_1 [100] = ' Holleワード' 。6 。7 プリント(dict_1) #は、オブジェクトを追加することの効果を確認します
1 dict_1 = {} #は空の辞書作成 2 。3 dict_1 [ ' 名前' ] = ' 暁' #変数名[キー] = [値]、直接割り当て方式オブジェクト加える 。4 dict_1 [1.34] = ' ABC ' 。5 プリント(dict_1) #は、オブジェクトを追加することの効果を表示する 。6 。7 dict_1 [ ' 名前' ] = ' HHH ' #'名称':[ 'シャオは' ] 読み取り: '名前':[ 'HHH'] 。8 プリント(dict_1) 位変更されたオブジェクトの効果を見る、比較を行います
我们看到了添加和修改,我要搞清楚一个概念,如果在我们赋值操作的时候,键(key)在字典中是不存在的,呢么就是添加对象;如果在我们赋值的时候,键(key)是本身字典就有同名的键(key),那就是修改。
如果说我们添加的时候不知道里面有没有同名的键(key),我们可以这样检查一下键(key)是不是在字典中已经存在:
1 dict_1 = {'name':'Xiao Hong','age':19,'iphone':'110'} 2 3 print('name' in dict_1) #要查询的格式 键 in关键字 字典对象(变量名) 4 print('hhh' in dict_1) #返回True就是存在,返回的False则是不存在
当然也可以使用这个方法:
has_key() 可以检查当前字典中键是否存在,但是!!!python3中没有这个方法啦,所以不再举例了,用第一种 in关键字就好了.。
我们再看下删除字典中的一个元素,代码怎么实现:
1 dict_1 = {'name':'Xiao Hong','age':19,'iphone':'110'} 2 print(dict_1) #删除之前 3 4 del dict_1['age'] #del关键字 5 print(dict_1) #删除之后
也可以这样删除字典中的元素:
1 dict_1 = {'name':'Xiao Hong','age':19,'iphone':'110'} 2 print(dict_1) #删除之前 3 4 a = dict_1.pop('name') #pop()方法,删除字典元素的时候,将键对应的值返回给了变量。 5 print(dict_1) #删除之后 6 print(a) #我们看下变量a有没有指向删除的值 'Xiao Hong'
我看的pop()方法,删除字典元素的时候,将键对应的值返回给了变量。
有时候我们会遍历字典中的键:
使用 keys() 方法:
1 dict_1 = {'name':'Xiao Hong', 2 'age':'19', 3 'iphone':'110'} #我们创建的字典对象 4 5 for key in dict_1.keys(): #遍历字典中的键key 6 print(key,end= ' ') # end=' '意思是末尾不换行,加空格。
同样的,我们也可以遍历字典中的所有值:
使用values() 方法:
1 dict_1 = {'name':'Xiao Hong', 2 'age':'19', 3 'iphone':'110'} #我们创建的字典对象 4 5 for value in dict_1.values(): #遍历字典中的值value 6 print(value,end= ' ') # end=' '意思是末尾不换行,加空格。
有时候我们会同时遍历字典中的键和值,这个需要用到字典中的items() 方法:
items() 方法: 它可以同时获取key和value 我们看下代码的实现:
1 dict_1 = {'name':'Xiao Hong', 2 'age':'19', 3 'iphone':'110'} #我们创建的字典对象 4 5 for key,value in dict_1.items(): #用 items()函数,同时遍历键和值 6 print(key,value,end= '') #打印键和值,end=' '意思是末尾不换行,加空格。
1 dict_1 = {'name':'Xiao Hong', 2 'age':'19', 3 'iphone':'110'} #我们创建的字典对象 4 5 print(dict_1.get('name')) #我们可以使用get()方法获取字典的值
字典的合并,就是将两个字典合并在一起
update() 需要注意的是:如果被合并的字典中包含已经存在的键值对,会覆盖原有的键值对。
1 dict_1 = {'name_1':'Xiao Hong', 2 'age':'19', 3 'iphone':'110'} #第一个字典 4 5 print(dict_1) #合并之前 6 dict_2 = {'name_2':'Xiao JUN', 7 'age':'19', 8 'iphone':'110'} #第二个字典 9 10 dict_1.update(dict_2) #将dict_2合并在dict_1字典中。 11 print(dict_1) #合并之后的dict_1字典,注意重复的键值对会被覆盖掉
清空字典用clear() 方法:
1 dict_1 = {'name_1':'Xiao Hong', 2 'age':'19', 3 'iphone':'110'} #创建一个字典 4 5 print(dict_1) #清空之前 6 print(dict_1.clear()) #清空并打印结果
字典还有很多方法,后面的笔记,遇见不同的场景,处理字典的时候我们在详细分析记录。