### Python中字典映射类型的学习教程 #### 一、字典概述 字典是Python中唯一的一种映射数据类型,使用一对大括号`{}`来表示。它由一系列键值对组成,其中键必须是不可变类型,并且每个键只能对应一个值。 #### 二、字典的特点 - **键的唯一性**:字典中的每个键都是唯一的,不允许有重复。 - **键的不可变性**:字典中的键必须是不可变类型的数据,如整型、浮点型、字符串或元组等。 - **值的多样性**:字典中的值可以是任何Python数据类型。 - **无序性**:字典中的元素是没有顺序的,因此不能通过索引访问。 - **动态性**:字典可以在运行时动态地增加、删除或修改键值对。 #### 三、字典的创建方式 1. **直接使用大括号**: ```python d = {'a': 1, 'b': 2} ``` 2. **通过列表创建**: ```python L = [('Jonh', 18), ('Nancy', 19)] d = dict(L) ``` 3. **通过元组创建**: ```python T = (('Jonh', 18), ('Nancy', 19)) d = dict(T) ``` 4. **通过关键字参数创建**: ```python d = dict(x=1, y=3) ``` 5. **使用`fromkeys`方法创建**: ```python L1 = [1, 2, 3] d = dict.fromkeys(L1, 'nothing') # 默认值为None ``` #### 四、字典的基本操作 1. **访问元素**:通过键来访问字典中的值。 ```python d = {'x': 1, 'y': 3} print(d['x']) # 输出1 ``` 2. **修改元素**:通过键来修改字典中的值。 ```python d['x'] = 1.5 print(d) # 输出{'x': 1.5, 'y': 3} ``` 3. **添加元素**:如果键不存在,则添加新的键值对。 ```python d[3] = 'z' print(d) # 输出{3: 'z', 'x': 1.5, 'y': 3} ``` 4. **删除元素**:使用`del`语句删除指定的键值对。 ```python del d['x'] print(d) # 输出{3: 'z', 'y': 3} ``` #### 五、字典的内置方法 1. **`clear()`**:清空字典中的所有元素。 ```python d.clear() print(d) # 输出{} ``` 2. **`copy()`**:返回字典的一个浅拷贝。 ```python d2 = d.copy() print(d2) # 输出与d相同的内容 ``` 3. **`fromkeys(seq, val=None)`**:根据序列创建字典,将`seq`中的元素作为键,`val`作为所有键对应的初始值。 ```python L1 = [1, 2, 3] d = dict.fromkeys(L1, 'nothing') print(d) # 输出{1: 'nothing', 2: 'nothing', 3: 'nothing'} ``` 4. **`get(key, default=None)`**:返回键`key`对应的值,如果键不存在则返回`default`。 ```python print(d.get('x', 'Not Found')) # 输出'Not Found' ``` 5. **`has_key(key)`**:检查字典中是否存在键`key`。(此方法已被弃用,在Python 3中应使用`key in d`来检查。) 6. **`items()`**:返回一个包含字典中键值对的列表。 ```python print(d.items()) # 输出字典中的键值对列表 ``` 7. **`keys()`**:返回一个包含字典中所有键的列表。 ```python print(d.keys()) # 输出字典中的所有键 ``` 8. **`iteritems()`, `iterkeys()`, `itervalues()`**:返回迭代器,分别用于迭代字典中的键值对、键和值。(这些方法在Python 3中已被移除,分别被`items()`, `keys()`, `values()`所取代。) 9. **`pop(key[, default])`**:删除键`key`并返回其对应的值,如果键不存在且没有提供`default`,则抛出`KeyError`异常。 ```python print(d.pop(3, 'Not Found')) # 输出'z' ``` 10. **`setdefault(key, default=None)`**:如果键`key`不存在,则设置其对应的值为`default`。 ```python print(d.setdefault('z', 'New Value')) # 输出'New Value' ``` 11. **`update(dict2)`**:将字典`dict2`中的键值对合并到当前字典中。 ```python d.update({'z': 'Updated Value'}) print(d) # 输出更新后的字典 ``` 12. **`values()`**:返回一个包含字典中所有值的列表。 ```python print(d.values()) # 输出字典中的所有值 ``` #### 六、注意事项 - 当尝试访问不存在的键时,会抛出`KeyError`异常。 - 字典是无序的,因此不能使用索引进行访问。 - 字典中的键必须是不可变类型。 通过以上内容,我们可以了解到字典在Python中的基本用法及其重要性。它是进行数据存储和处理时不可或缺的数据结构之一。希望本教程能帮助读者更好地理解和掌握字典的相关知识。
- 粉丝: 2
- 资源: 926
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助