字典
让我们看看另一种 Python 复合数据类型, 称为  字典,它类似于列表,因为它是对象的集合。 
字典和列表具有以下特点:
 
- 两者都是可变的;
 
- 两者都是动态的(可以根据需要增长和收缩);
 
- 两者都可以嵌套(一个列表可以包含另一个列表,一个字典可以包含另一个字典,一个字典也可以包含一个列表,反之亦然)。
 
 
字典与列表的不同之处主要在于元素的访问方式:
 
- 列表元素通过索引在列表中的位置访问;
 
- 使用键访问字典元素。
 
 
字典是一种用 Python 实现的数据结构,更广为人知的名称是关联数组。 字典由一个集合组成of key pairs -value. 每个键值对将键映射到相应的值。 
 
创建字典
您可以通过将逗号分隔的键值对列表括在大括号 ( {}) 中来定义字典。 冒号 ( :) 将每个键与其相关的一个值:
 
d = {
    <键>: <值>,
    <键>: <值>,
      .
      .
      .
    : ;
 
您可以使用内置的 dict() 函数创建字典。 dict()  参数必须是 key-value 对序列。元组列表适用于此:
d = 字典([
    (<键>, <值>),
    (<键>, <值),
      .
      .
      .
    (<键>, <值>)
])
只需使用 print() 命令即可在屏幕上显示列表的内容。 字典中的条目按创建顺序显示。 
            
            
                  
            
             
                    
            
                 
      
                  
           | 
	
		
 
     
              
              
                  
                       
            
                
          
            访问字典元素
要使用字典的元素,它们必须能够以某种方式访问。 如果您不能通过索引获取它们,您如何获取它们? 
通过在方括号 ( []) 中指定相应的键从字典中检索值。
 
例如,从上一个任务中创建的字典中显示阿布哈兹的首都:
 
打印(dict_country['阿布哈兹'])
 
如果您引用不在字典中的键,Python 会抛出异常:
打印(dict_country['俄罗斯'])
     回溯(最近一次通话最后):< /span> 文件 "<...>",行...,在  
   打印(dict_country[& #39;俄罗斯'])  
KeyError: '俄罗斯' ; 
 
向字典添加元素
向现有字典添加条目就像分配新键和值一样简单:
dict_country['俄罗斯'] = '莫斯科'
 
更新字典条目
如果你想更新一个条目,你可以简单地为一个现有的键分配一个新值:
dict_country['俄罗斯'] = '莫斯科'
 
从字典中删除条目
要删除条目,请使用 del 运算符,指定要删除的键:
del dict_country[]
 
虽然访问字典中的元素与顺序无关,但 Python 确保保留字典中元素的顺序。显示时,元素将按照定义的顺序显示,键也将按该顺序重复。添加到字典中的项目在末尾添加。如果删除了元素,则保留剩余元素的顺序。 
 
应该记住,字典的键以及字典的元素可以是不同的类型。字典还可以包含以下内容:
d = {42: [2, 3, 6, 7], 2.78: 'bbb', 真: 1}
print(d[42][1]) # 3 - 要访问嵌套元素,请使用附加键或索引
 
            
            
                  
            
             
                    
            
                 
      
                  
           | 
	
		
 
     
              
              
                  
                       
            
                
          
            内置字典方法
您学到的有关字符串、列表和元组的一些方法也适用于字典。 例如,  in(或  not in)方法允许您确定是否一个特定的键存在于字典中。
 
并且还允许您浏览字典的所有键。
 
对于 dict_country 中的键:
   打印(键)
您还可以使用 items() 方法遍历键值对。
对于 dict_country.items() 中的键,值:
   打印(键,值)
其他常用方法见表。 
 
<表>
<头>
| 姓名 | 
方法 | 
描述(示例) | 
 
东西>
<正文>
| 字典大小 | 
len() | 
返回字典中的元素个数 
<前>
len(dict_country)
 | 
 
| 更新字典 | 
更新() | 
 允许您一次更新多个字典对
<前>
dict_country.update({'俄罗斯': '莫斯科', '亚美尼亚': '埃里温'})< /pre>
 | 
 
| 按键取值 | 
获取() | 
 允许您通过指定的键获取值。可用于检查字典中是否存在特定键
<前>
dict_country.get('Russia') # 按键返回值,
                              # 如果没有这样的键,它将返回 None
dict_country.get('Russa', 0) # 如果没有俄罗斯键,它将返回 0
                                #(而不是0,你可以设置任何值
 | 
 
| 删除密钥 | 
弹出() | 
 pop() 方法删除一个键并返回其对应的值。
<前>
dict_country.pop('巴哈马')
 | 
 
| 字典键  | 
键() | 
 keys() 方法返回字典中的键集合。
<前>
dict_country.keys()
 | 
 
| 字典值 | 
值() | 
方法 values() 返回字典中值的集合。
<前>
dict_country.values()
 | 
 
| 字典对 | 
项目() | 
 items() 方法返回字典中值的集合。
<前>
dict_country.items()
 | 
 
表> 
            
            
                  
            
             
                    
            
                 
      
                  
           |