Python元组与字典
python字典
概念:字典是另一种可变容器类型,且可存储任意类型对象,如其他容器类型。
字典由键和对应值成对组成。字典也被称作关联数组或哈希表。理解好一一对应的
关系很重要
1. 掌握字典类型
a) 字典的特点
无序: 通过键实现元素存取,故无序
可变:可以通过键进行改变值
异构:支持多种数据类型
嵌套:可以在键值对中的值部分出现字典
b) 定义字典:
ii. 方法一:{key1:value1,key2:value2,...}
iii. 方法二:dict()内置函数:指定键值
例:d2=dict(name="jerry",age="45",gender="m")
iv. 关键点:
键与值用冒号“:”分开;
项与项用逗号“,”分开;
字典中的键必须是唯一的,而值可以不唯一
实例:
dict = {'Alice': '16', ' MadKing ': '17', 'Cecil': '18'}
dict1 = { 'abc': 456 }dict2 = { 'abc': 123, 98.6: 37 } 嵌套定义
访问字典里的值
把相应的键放入熟悉的方括弧,如下实例:
|
如果用字典里没有的键访问数据,会输出错误如下:
|
以上实例输出结果:
1 2 3 4 5 |
|
修改字典
向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对如下实例:
1 2 3 4 5 6 7 8 9 10 |
|
以上实例输出结果:
1 2 |
|
删除字典元素
能删单一的元素也能清空字典,清空只需一项操作。
显示删除一个字典用del命令,如下实例:
|
但这会引发一个异常,因为用del后字典不再存在:
1 2 3 4 5 |
|
注意:删除元素尽量用字典内置方法,不需要直接del,后面会讨论。
字典键的特性
字典值可以没有限制地取任何python对象,既可以是标准的对象,也可以是用户定义的,但键不行。
两个重要的点需要记住:
1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住,如下实例:
1 2 3 4 5 |
|
以上实例输出结果:
1 |
|
2)键必须不可变,所以可以用数,字符串或元组充当,所以用列表就不行,如下实例:
1 2 3 4 5 |
|
以上实例输出结果:
1 2 3 4 |
|
掌握字典相关方法
1.1 添加元素:dict1[key] = value
例如:
1.2 items():变量解包:即将字典转化为键、值作为元组的列表
例如:
dict = {'Name': 'Zara', 'Age': 7}
print "Value : %s" % dict.items()
Value : [('Age', 7), ('Name', 'Zara')]
1.3 keys();键列表
例如:
1.4 values():值列表
例如:
1.5 has_key():判断是否存在某个键,返回结果true 或false
例如:
1.6 len():取得字典中键值对个数
例如:
1.7 update():在原字典上合并字典,键相同时会被覆盖。
例如:
1.8 get():取得某个键对应的值
例如:
1.9 pop():弹出指定键对应的值
1.10 popitem():随机弹出键值对
1.11 clear():清除所有元素
例如:
2. 掌握字典的遍历:
概念:Python的元组与列表类似,也是一种容器类型,不同之处在于元组的元素不能修改。
元组使用小括号,列表使用方括号。
Python的元组与列表类似,不同之处在于元组的元素不能修改。
特点:支持异构;
支持嵌套;
不可变
元组使用小括号,列表使用方括号。
元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
如下实例:
1 2 3 |
|
创建空元组
|
元组中只包含一个元素时,需要在元素后面添加逗号
|
元组与字符串类似,下标索引从0开始,可以进行截取,组合等。
访问元组
元组可以使用下标索引来访问元组中的值,如下实例:
|
以上实例输出结果:
|
修改元组
元组中的元素值是不允许修改的,但我们可以对元组进行连接组合,如下实例:
|
以上实例输出结果:
|
删除元组
元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组,如下实例:
|
以上实例元组被删除后,输出变量会有异常信息,输出如下所示:
1 2 3 4 5 6 |
|
元组运算符
与字符串一样,元组之间可以使用 + 号和 * 号进行运算。这就意味着他们可以组合和复制,运算后会生成一个新的元组。
Python 表达式 | 结果 | 描述 |
len((1, 2, 3)) | 3 | 计算元素个数 |
(1, 2, 3) + (4, 5, 6) | (1, 2, 3, 4, 5, 6) | 连接 |
['Hi!'] * 4 | ('Hi!', 'Hi!', 'Hi!', 'Hi!') | 复制 |
3 in (1, 2, 3) | True | 元素是否存在 |
for x in (1, 2, 3): print x, | 1 2 3 | 迭代 |
元组索引,截取
因为元组也是一个序列,所以我们可以访问元组中的指定位置的元素,也可以截取索引中的一段元素,如下所示:
元组:
|
Python 表达式 | 结果 | 描述 |
L[2] | 'SPAM!' | 读取第三个元素 |
L[-2] | 'Spam' | 反向读取;读取倒数第二个元素 |
L[1:] | ['Spam', 'SPAM!'] | 截取元素 |
无关闭分隔符
任意对象 以逗号隔开,默认为元组,如下实例:
|
元组内置函数
Python元组包含了以下内置函数
序号 | 方法及描述 |
1 | len(t) 计算元组元素个数。
|
2 | max(t) 返回元组中元素最大值。
|
3 | min(t) 返回元组中元素最小值。
|
4 | tuple(li) 将列表转换为元组
|
5 | index():返回指定元素第一次出现的索引位置 count():指定元素出现的次数 例如:
|
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341