什么是字典?

像列表一样,但是不能想列表用下表索引,而是通过'键',键及其关联的值称为'键-值'对。字典经常会简写成dict

创建字典{}

例如:

>>> dict = {'one':1,'two':2,'three':3}

访问字典的值通过key

>>> dict = {'one':1,'two':2,'three':3}

>>> dict['one']

1

添加或修改字典[key]

>>> dict = {'one':1,'two':2,'three':3}

>>> dict['one']

1

>>> dict['four'] = 4

>>> dict

{'one': 1, 'two': 2, 'three': 3, 'four': 4}

>>> dict['one'] = '一'

>>> dict

{'one': '一', 'two': 2, 'three': 3, 'four': 4}

删除字典里元素 del

>>> del dict['four']

>>> dict

{'one': '一', 'two': 2, 'three': 3}

合并字典update()

>>> dict

{'one': '一', 'two': 2, 'three': 3}

>>> dict1 = {'four':4}

>>> dict.update(dict1)

>>> dict

{'one': '一', 'two': 2, 'three': 3, 'four': 4}

使用clear()删除所有元素

>>> dict

{'one': '一', 'two': 2, 'three': 3, 'four': 4}

>>> dict.clear()

>>> dict

{}

判断一个键是否存在in,get()方法,setdefault()方法

>>> dict={'one': 1, 'two': 2, 'three': 3, 'four': 4}

>>> 'one' in dict

True

>>> 'five' in dict

False

get()方法,它有两个参数:要取的其值的键,以及如果该键不存在时,返回的备用值。

>>> dict

{'one': 1, 'two': 2, 'three': 3, 'four': 4}

>>> dict.get('one')

1

>>> dict.get('five')

>>> print(dict.get('five'))

None

>>> dict.get('five',5)

5

>>> dict

{'one': 1, 'two': 2, 'three': 3, 'four': 4}

setdefault()方法提供一种方式,传递给该方法的第一个参数,是要检查的键。第二个参数,如果该键不存在时要设置的值。如果该键存在,就会返回键的值。

>>> dict

{'one': 1, 'two': 2, 'three': 3, 'four': 4}

>>> dict.setdefault('one',1)

1

>>> dict.setdefault('one','一')

1

>>> dict

{'one': 1, 'two': 2, 'three': 3, 'four': 4}

>>> dict.setdefault('five',5)

5

>>> dict

{'one': 1, 'two': 2, 'five': 5, 'three': 3, 'four': 4}

keys()、values()、items()方法

分别对应键、值、和键-值对

>>> for i in dict.keys():

    print(i)

 

    

one

two

three

four

>>> for i in dict.values():

    print(i)

    

1

2

3

4

>>> for a,b in dict.items():

    print(a,b)

    

one 1

two 2

three 3

four 4

使用 = 赋值,使用copy()复制

= 和列表一样,改变其中一个变量,其他变量也会改变

>>> dict

{'one': 1, 'two': 2, 'five': 5, 'three': 3, 'four': 4}

>>> dict1 = dict

>>> del dict1['five']

>>> dict1

{'one': 1, 'two': 2, 'three': 3, 'four': 4}

>>> dict

{'one': 1, 'two': 2, 'three': 3, 'four': 4}

使用copy()就可以避免这种情况

嵌套

列表中嵌套字典

>>> [{'one':1},{'two',2},{'three':3}]

[{'one': 1}, {2, 'two'}, {'three': 3}]

字典中嵌套列表

>>> {'one':[1,'yi','一','壹'],'two':[2,'二','贰']}

{'one': [1, 'yi', '一', '壹'], 'two': [2, '二', '贰']}

字典中嵌套字典

>>> {'number':{'one':1,'two':2,'three':3},'abc':{'a':'A','b':'B'}}

{'number': {'one': 1, 'two': 2, 'three': 3}, 'abc': {'a': 'A', 'b': 'B'}}

Python学习笔记(2)-字典的更多相关文章

  1. python学习笔记整理——字典

    python学习笔记整理 数据结构--字典 无序的 {键:值} 对集合 用于查询的方法 len(d) Return the number of items in the dictionary d. 返 ...

  2. Python学习笔记之字典

    一.创建和使用字典 1.创建字典 phonebook={'Alice':'2341','Beth':'9102','Cecil':'3258'} 2.dict,通过映射创建字典 >>> ...

  3. 【Python学习笔记】字典操作

    字典dict是Python中唯一内置的映射类型,由键值对组成,字典是无序的.字典的键必须是不变对象,如字符串.数字.元组等,而包含可变对象的列表.字典和元组则不能作为键.这里可变和不可变的意思是指这个 ...

  4. Python学习笔记四--字典与集合

    字典是Python中唯一的映射类型.所谓映射即指该数据类型包含哈希值(key)和与之对应的值(value)的序列.字典是可变类型.字典中的数据是无序排列的. 4.1.1字典的创建及赋值 dict1={ ...

  5. python学习笔记八——字典的方法

    4.3.3 字典的方法 字典的常用方法可以极大地提高编程效率.keys()和values()分别返回字典的key列表和value列表.例: dict={"a":"appl ...

  6. python学习笔记七——字典

    4.3 字典结构 字典是Python中重要的数据类型,字典的由“键-值”对组成的集合,字典中的“值”通过“键”来引用. 4.3.1 字典的创建 字典由一系列的“键-值”(key-value)对组成,“ ...

  7. python学习笔记(字典乱码)

    博主总结下 python中字典中包含中文时,使用过程中出现乱码 json.dumps(params, encoding="UTF-8", ensure_ascii=False) p ...

  8. Python学习笔记3(字典)

    创建字典 dict函数 字典的格式化字符串 字典方法 clear copy fromkeys 序列是一个按照一定顺序将值进行组织的数据结构形式,可以通过索引对其进行征引.另外还有一种数据结构是通过名字 ...

  9. python学习笔记(6)——字典(Dictionary)

    dict= {key1 : value1, key2 : value2 ...} 关键词:字典中元素成对出现- key:value 格式- 两端{ } ,键:值,每对键值间用 ,隔开. 键key-唯一 ...

  10. python学习笔记(三)---字典

    字典 在Python中,字典 字典 是一系列键 键-值对 值对 .每个键 键 都与一个值相关联,你可以使用键来访问与之相关联的值.与键相关联的值可以是数字.字符串.列表乃至字典.事实上,可将 任何Py ...

随机推荐

  1. 抛弃console.log(),拥抱浏览器Debugger

    译者按: 切换成本真的不高,建议使用开发者工具来Debug! 原文:How to stop using console.log() and start using your browser's deb ...

  2. 你所不知道的JSON.stringify

    译者按: 老司机们,你知道JSON.stringify还有第二个和第三个可选参数吗?它们是什么呢? 原文: What you didn’t know about JSON.Stringify 译者: ...

  3. js 元素大小缩放实例

    元素大小缩放是一套连贯事件,按下鼠标不放,拖动鼠标 然后松开. 按下鼠标事件 当按下鼠标时,记录元素大小.鼠标按下的位置.状态位. 拖动鼠标事件 当鼠标拖动时,计算元素调用后的大小. 元素调整后大小 ...

  4. git 常用操作,下拉,提交,更新,还原

    注: origin为远程仓库名称 master为远程分支名称   //第一次提交所有代码 1.git clone 项目url 2.复制.git 和文件到根目录 3.git add . 4.git co ...

  5. JS单体内置对象之Math常用方法(min,max,ceil,floor,round,random等)

    1.min()和max()方法 Math.min()用于确定一组数值中的最小值.Math.max()用于确定一组数值中的最大值. alert(Math.min(2,4,3,6,3,8,0,1,3)); ...

  6. 洛谷P1516 青蛙的约会

    题目描述 两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面.它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止.可是它们出发之前忘记了一件很重要的事情,既没有问清 ...

  7. POJ 2407Relatives

    Relatives Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 15566   Accepted: 7900 Descri ...

  8. 嵌套RecyclerView左右滑动替代自定义view

    以前的左右滑动效果采用自定义scrollview或者linearlayout来实现,recyclerview可以很好的做这个功能,一般的需求就是要么一个独立的左右滑动效果,要么在一个列表里的中间部分一 ...

  9. springboot 学习之路 7(静态页面自动生效问题)

    目录:[持续更新.....] spring 部分常用注解 spring boot 学习之路1(简单入门) spring boot 学习之路2(注解介绍) spring boot 学习之路3( 集成my ...

  10. 适用于VS C++环境的注释代码段,可以让你的代码被使用时有高可读性的注释

    编码时,在对高级语言(C#/VB etc)函数的访问时,经常会有很明确的函数功能提示,参数提示,与返回值提示.微软的VisualStudio C++集成开发环境同样有这样的功能,只是常见开源的代码很少 ...