(4)python 字典
创建字典
phonebook = {'Alice': '', 'Beth': '', 'Cecil': ''}
以 value :key 键值对的格式。冒号前是键,冒号后时值 ,组合在一起是一项。多个项放在一个花括号内。
函数dict()用来把其他项创建成一个字段
>>> item = [('name', 'tom'), ('age', 17)]
>>> d=dict(item)
>>> d
{'name': 'tom', 'age': 17}
或者
>>> d = dict(name='tom', age=17)
>>> d
{'name': 'tom', 'age': 17}
len() 返回字段包含项的个数
>>> len(d)
2
通过字典的键访问值
>>> d['name']
'tom'
修改或增加一个项
>>> d['age']=18
>>> d
{'name': 'tom', 'age': 18}
>>> d['a']=33
>>> d
{'name': 'tom', 'age': 18, 'a': 33}
删除一项
>>> del d['a']
>>> d
{'name': 'tom', 'age': 18}
检查字段是否有此键
>>> 'age' in d
True
字典方法
1.clear() 删除所有项
2.copy() 返回一个新字典
y=x.copy()
修改值原字典不会受影响,替换值原字典会受到影响。
遇到替换问题可以用深复制的方法--暂时不想了解
3.fromkeys()
创建一个新字典,每个键对应的值为None。
>>> dd={}.fromkeys(['name','age'])
>>> dd
{'name': None, 'age': None}
如果不行默认None
>>> xx={}.fromkeys(['name','age'],'abc')
>>> xx
{'name': 'abc', 'age': 'abc'}
4.get
get和键访问一样。但是键访问没有的键会引发异常。get访问没有得键会返回None
>>> xx['a']
Traceback (most recent call last):
File "<pyshell#78>", line 1, in <module>
xx['a']
KeyError: 'a'
>>> xx.get('name')
'abc'
>>> xx.get('a')
>>>
>>>
5.items
返回一个字典视图
>>> d
{'y': , 'z': , 'a': }
>>> d.items()
dict_items([('y', ), ('z', ), ('a', )])
6.keys
返回一个只包含键的字典视图。值无重复
>>> d
{'y': , 'z': }
>>> d.keys()
dict_keys(['y', 'z'])
7.pop
方法pop可用于获取与指定键相关联的值,并将该键-值对从字典中删除
>>> d={'x':,'y':}
>>> d.pop('x')
>>> d
{'y': }
8.popitem
随机弹出一项,并返回弹出项
>>> d
{'y': , 'z': , 'a': , 'b': }
>>> d.popitem()
('b', )
>>> d
{'y': , 'z': , 'a': }
9.setdefault
如果setdefault 参数对应的键在字典里无此键,则在字典添加这个键值。如果字典里有此键,则不更新
>>> d
{'y': , 'z': , 'a': }
>>> d.setdefault('b',) >>> d
{'y': , 'z': , 'a': , 'b': }
>>> d['b']=
>>> d
{'y': , 'z': , 'a': , 'b': }
>>> d.setdefault('b',) >>> d
{'y': , 'z': , 'a': , 'b': }
10.update
使用字典项来更新字典,没有的项会新增
>>> d
{'y': , 'z': , 'a': }
>>> x={'a':,'b':}
>>> d.update(x)
>>> d
{'y': , 'z': , 'a': , 'b': }
>>>
11.values
返回一个只包含值的字典视图。值有可能重复
>>> d
{'y': , 'z': , 'a': }
>>> d.values()
dict_values([, , ])
>>>
(4)python 字典的更多相关文章
- Python字典和集合
Python字典操作与遍历: 1.http://www.cnblogs.com/rubylouvre/archive/2011/06/19/2084739.html 2.http://5iqiong. ...
- python 字典排序 关于sort()、reversed()、sorted()
一.Python的排序 1.reversed() 这个很好理解,reversed英文意思就是:adj. 颠倒的:相反的:(判决等)撤销的 print list(reversed(['dream','a ...
- python字典中的元素类型
python字典默认的是string item={"browser " : 'webdriver.irefox()', 'url' : 'http://xxx.com'} 如果这样 ...
- python字典copy()方法
python 字典的copy()方法表面看就是深copy啊,明显独立 d = {'a':1, 'b':2} c = d.copy() print('d=%s c=%s' % (d, c)) Code1 ...
- python 字典实现类似c的switch case
#python 字典实现类似c的switch def print_hi(): print('hi') def print_hello(): print('hello') def print_goodb ...
- python字典的常用操作方法
Python字典是另一种可变容器模型(无序),且可存储任意类型对象,如字符串.数字.元组等其他容器模型.本文章主要介绍Python中字典(Dict)的详解操作方法,包含创建.访问.删除.其它操作等,需 ...
- Python 字典(Dictionary)操作详解
Python 字典(Dictionary)的详细操作方法. Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. 一.创建字典 字典由键和对应值成对组成.字 ...
- Python 字典(Dictionary) get()方法
描述 Python 字典(Dictionary) get() 函数返回指定键的值,如果值不在字典中返回默认值. 语法 get()方法语法: dict.get(key, default=None) 参数 ...
- Python 字典(Dictionary) setdefault()方法
描述 Python 字典(Dictionary) setdefault() 函数和get()方法类似, 如果键不已经存在于字典中,将会添加键并将值设为默认值. 语法 setdefault()方法语法: ...
- python 字典内置方法get应用
python字典内置方法get应用,如果我们需要获取字典值的话,我们有两种方法,一个是通过dict['key'],另外一个就是dict.get()方法. 今天给大家分享的就是字典的get()方法. 这 ...
随机推荐
- BZOJ 3876:支线剧情(有下界最小费用最大流)
3876: [Ahoi2014]支线剧情 Description [故事背景]宅男JYY非常喜欢玩RPG游戏,比如仙剑,轩辕剑等等.不过JYY喜欢的并不是战斗场景,而是类似电视剧一般的充满恩怨情仇的剧 ...
- Springboot2.0 集成shiro权限管理
在springboot中结合shiro教程搭建权限管理,其中几个小细节的地方对新手不友好,伸手党更是无法直接运行代码,搭建过程容易遇坑,记录一下.关键的地方也给注释了. 版本:springboot版本 ...
- CF762E Radio Stations
题目戳这里. 我还以为是KDtree呢,但是KDtree应该也可以做吧. 这是一道数据结构好题.考虑到由于\(K \le 10\),所以我们用两个大vector--\(Left,Right\),\(L ...
- BZOJ2631 tree(伍一鸣) LCT 秘制标记
这个题一看就是裸地LCT嘛,但是我wa了好几遍,这秘制标记...... 注意事项:I.*对+有贡献 II.先下传*再下传+(因为我们已经维护了+,不能再让*对+产生贡献)III.维护+用到size # ...
- handler更新ui线程的基本用法
1.因为费时操作要放子线程,更新UI要放UI线程(主线程),所以子线程和主线程通信,通信的话要用到handler这个东西. 这里讲的比较简单,举2个例子说明 2.使用post的是handler ,使用 ...
- 用实例工厂的方法实例化bean
在实例化bean时,除了setter,constructor方法外,还有实例工厂方法,和静态工厂方法. 看代码: People类的代码如下: package com.timo.domain; publ ...
- bzoj 2756 [SCOI2012]奇怪的游戏 二分+网络流
2756:[SCOI2012]奇怪的游戏 Time Limit: 40 Sec Memory Limit: 128 MBSubmit: 4926 Solved: 1362[Submit][Stat ...
- Windows下安装Mycat
Mycat 首先在安装Mycat之前,需要安装JDK1.7以上,可以在cmd环境下输入 java -version 查看本地安装的java版本 如果未安装或者版本在1.7以下,请重新安装. 安装JDK ...
- [05]Git查看、删除、重命名远程分支和tag
Git查看.删除.重命名远程分支和tag 2015-06-15:加入姊妹篇: 2013-11-06:加入重命名远程分支的内容: 2013-01-09:加入删除远程tag的内容. 姊妹篇:使用Git.G ...
- Flex UI刷新后保持DataGrid中的ScrollBar的位置不变
这是之前我发的一个贴子问题描述:http://q.cnblogs.com/q/53469/