python 字典
来源:互联网 发布:海口网络推广公司 编辑:程序博客网 时间:2024/06/06 04:48
dict:Python 内置了字典:dict的支持,dict全称dictionary,在其他语言中称为map,使用键-值(key-value)存储举个例子,假设要根据同学的名字查找对应的成绩,如果用list实现,需要两个list如果用dict实现,只需要一个"名字"-"成绩"的对照表,直接根据名字查找成绩,无论这个表有多大,查找速度都不会变慢。用Python写一个dict如下:# -*- coding: UTF-8 -*-d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}print d['Michael']C:\Python27\python.exe C:/Users/TLCB/PycharmProjects/untitled/t1.py95# -*- coding: UTF-8 -*-d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}print dd['Adam']=67print '--------------'print dC:\Python27\python.exe C:/Users/TLCB/PycharmProjects/untitled/t1.py{'Bob': 75, 'Michael': 95, 'Tracy': 85}--------------{'Bob': 75, 'Michael': 95, 'Tracy': 85, 'Adam': 67}要避免key不存在的错误,有两种办法,一是通过in判断key是否存在:判断Key是否存在:# -*- coding: UTF-8 -*-d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}if 'Thomas' in d: print 11111else: print 22222C:\Python27\python.exe C:/Users/TLCB/PycharmProjects/untitled/t1.py22222# -*- coding: UTF-8 -*-d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}if 'Michael' in d: print 11111else: print 22222C:\Python27\python.exe C:/Users/TLCB/PycharmProjects/untitled/t1.py11111二:是通过dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value:# -*- coding: UTF-8 -*-d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}if d.get('Thomas'): print 11111else: print 22222C:\Python27\python.exe C:/Users/TLCB/PycharmProjects/untitled/t1.py22222要删除一个key,用pop(key)方法,对应的value也会从dict中删除:# -*- coding: UTF-8 -*-d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}print dd.pop('Bob')print dC:\Python27\python.exe C:/Users/TLCB/PycharmProjects/untitled/t1.py{'Bob': 75, 'Michael': 95, 'Tracy': 85}{'Michael': 95, 'Tracy': 85}set:set和dict类似,也是一组key的集合,但不存储value,由于key不能重复,所以,在set中,没有重复的key.要创建一个set,需要提供一个list作为输入集合
阅读全文
0 0
- Python 字典
- python 字典
- Python:字典
- Python 字典
- python字典
- Python 字典
- python 字典
- python 字典
- Python 字典
- Python字典
- python 字典
- python字典
- python 字典
- python 字典
- python--字典
- python 字典
- python字典
- Python---字典
- 在CentOS7.3上编译gcc4.1.2 (gcc4.1.2、淘宝TFS)
- codeforces 788A Functions again(dp之最大子段和)【模板】
- c++11自带thread完成一个双线程交替买票程序
- CC2640R2F BLE5.0 开发环境搭建
- poll源码剖析
- python 字典
- hdu 1062 Text Reverse
- 手机端页面测试神器--Browsersync
- JAVA中double格式化控制精度小数位数,float同理
- 编译cmake 2.8.10.2报错:undefined reference to symbol 'keypad'
- webpack的基本使用(一)
- CC2640R2F BLE5.0 下载运行第一个程序(simple_peripheral)
- 责任链模式
- ±1RMQ(约束RMQ)