Python之Dict字典

一、Dict(Dictionary)类型

Dict(中文叫字典)是另一种可变容器模型,且可存储任意类型对象。

字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:

1 # -*- coding: UTF-8 -*-
2
3 d = {
4     ‘Adam‘: 95,
5     ‘Lisa‘: 85,
6     ‘Bart‘: 59
7 }

我们把名字称为key,对应的成绩称为value,dict就是通过 key来查找 value。

花括号{}表示这是一个dict,然后按照 key: value, 写出来即可。最后一个 key: value 的逗号可以省略。

键必须是唯一的,但值则不必。

值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。

1、 访问Dict

把相应的键放入熟悉的方括弧,如下实例(还可以使用字典提供的get方法: dict.get(‘Bart‘))

 1 # -*- coding: UTF-8 -*-
 2
 3 dict = {
 4     ‘Adam‘: 95,
 5     ‘Lisa‘: 85,
 6     ‘Bob‘: 59
 7 }
 8
 9 print ‘Adam =‘, dict[‘Adam‘]
10 print ‘Lisa =‘, dict[‘Lisa‘]
11 print ‘Bob =‘, dict[‘Bob‘]

2、修改Dict

向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对如下实例:

 1 # -*- coding: UTF-8 -*-
 2
 3 dict = {
 4     ‘Adam‘: 95,
 5     ‘Lisa‘: 85,
 6     ‘Bob‘: 59
 7 }
 8
 9 dict[‘Adam‘] = 100   # 修改字典中的‘Adam‘对应的value
10 dict[‘Paul‘] = 66    # 添加一个新的key-value对
11 print dict

3、删除Dict中的元素

 1 # -*- coding: UTF-8 -*-
 2
 3 dict = {
 4     ‘Adam‘: 95,
 5     ‘Lisa‘: 85,
 6     ‘Bob‘: 59,
 7     ‘Paul‘: 75
 8 }
 9
10 del dict[‘Adam‘];  # 删除键是‘Adam‘的条目
11 dict.clear();      # 清空字典
12 del dict;          # 删除字典

删除字典之后,字典就不存在了,那么也就意味着不能再访问该字典了。

4、字典的特性

(1)查找速度快

无论dict有10个元素还是10万个元素,查找速度都一样。而list的查找速度随着元素增加而逐渐下降。

不过dict的查找速度快不是没有代价的,dict的缺点是占用内存大,还会浪费很多内容,list正好相反,

占用内存小,但是查找速度慢。

(2)字典值可以没有限制地取任何python对象,既可以是标准的对象,也可以是用户定义的,但键不行。

不允许同一个键出现两次。

键必须不可变,所以可以用数字,字符串或元组充当,所以用列表就不行。

(3)dict的第二个特点就是存储的key-value序对是没有顺序的!这和list不一样。

5、字典内置的方法

Python字典包含了以下内置方法:

参考文章: http://www.runoob.com/python/python-dictionary.html

慕课网《Python入门》

时间: 2024-10-07 17:13:52

Python之Dict字典的相关文章

Python之dict字典详解

Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,字典是另 一种可变容器模型,且可存储任意类型对象.具有极快的查找速度. 字典是一种通过名字或者关键字引用的得数据结构,其键可以是数字.字符串.元组,这种结构类型也称之为映射.字典类型是Python中唯一內建的映射类型,基本的操作包括如下: (1) len() : 返回字典中 键:值对 的数量 (2) d[k] : 返回关键字对应的值: (3) d[k] = v : 将值关联到键值k上: (4) d

一入python深似海--dict(字典)的一种实现

下面是python中字典的一种实现,用list数据结构实现字典.具体是这样的:[[(key1,value1),(key2,value2),...],[],[],...] 内部每一个hash地址是一个list,存放hash地址相同的(key,value)对. dict代码 def Map(num_buckets=256): """Initializes a Map with the given number of buckets.""" aMap

python入门14 字典dict

字典dict是无序的key:value格式的数据序列 #coding:utf-8 #/usr/bin/python """ 2018-11-11 dinghanhua 字典 """ '''dict 无序的key:value组合 key要是不可变类型,如数字.字符串.元组 key不可重复,重复的会被最后一个覆盖 ''' dict_id = {'1':'python','2':'java','3':'javascript','4':'go','2':

Python 基础之字典(dict)的用法

python dict字典字典是Python中唯一的内建映射类型,字典中的数据没有特定的顺序,可以通过特定的键(key)来存取数据.键可以是数字.元组或字符串,但不能是列表. 字典的常用方法:1.1 clear()方法1.2 copy()方法1.3 fromkeys()方法1.4 get()方法1.5 has_key()方法1.6 items.iteritems方法1.7 keys.iterkeys1.8 popitem()方法1.9 setdefault()方法1.10 update()方法1

python dict 字典详解

和列表相同,字典也是许多数据的集合,属于可变序列类型.不同之处在于,它是无序的可变序列,其保存的内容是以“键值对”的形式存放的. 字典中,习惯将各元素对应的索引称为键(key),各个键对应的元素称为值(value),键及其关联的值称为“键值对”. 字典类型很像学生时代常用的新华字典.我们知道,通过新华字典中的音节表,可以快速找到想要查找的汉字.其中,字典里的音节表就相当于字典类型中的键,而键对应的汉字则相当于值. 表 1 Python 字典特征 主要特征 解释 通过键而不是通过索引来读取元素 字

Python零基础入门(11)-------dict 字典表

dict 字典表属于映射的数据类型 特性:通过键(key),而不是通过下标访问数据 包含任意对象的无序集合 可变长度,可任意嵌套 属于"可变映射" 分类 对象引用表(Hash Table) 声明:   d = { } 是一个空的字典表.字典表是一个 {key: value} 的形式.key 只能是不可变的元素(可变类型List就不可以). 从下面图片你也可以看出 dict 字典表 是一个无序的集合.是通过内部Hash算法排序的 key 只能是不可变类型的数据.可变类型就会抛出错误信息

Python基础入门—字典dict

目录 字典 字典的定义 字典对象增加元素 字典对象元素删除 字典对象的修改 字典对象元素的查找 字典的深浅拷贝 字典 字典是一种可变数据类型 点典的元素存储方式是键值对的形式,键值对之间用逗号隔开 键值对的形式形如:key:value 最外层用{}括起来 d = {key1 : value1, key2 : value2 } 由于字典是键值对的形式,所以字典是无序的,自然不能切片和索引,而是通过键来取值 键:一般是唯一的,如果重复最后的一个键值对会替换前面的,值不需要唯一 值:可以取任何数据类型

python:DataFrame转dict字典

背景:将商品id以及商品类别作为字典的键值映射,生成字典,原为DataFrame # 创建一个DataFrame # 列值类型均为int型 import pandas as pd item = pd.DataFrame({'item_id': [100120, 10024504, 1055460], 'item_category': [87974, 975646, 87974]}, index=[0, 1, 2]) item # 将item_id,item_category两列数值转为dict字

4.Dict字典

'''Dict 字典存储的是key-value键值对形式的值特点: 1.无序,因为无下标 2.key值是唯一的,自动去重''' person = { "name":"xiaoming", "age" : 20} #根据key查询值print(person["name"])print(person["age"])print(person.get("name","没有")