写在最前面
python中的字典是用{}来表示的,别看见{}就以为是对象,在其他的语言中{}确实可以用来表示对象,但在python中却是字典的表示方法。字典里面的数据和对象里面的数据表示方法差不多,都是以键值对的方式存放在里面的:
dictionaries = {'name':'张三','sex':'男','info':'欢迎来到挨踢星球'}
那么什么是键值对("key = value")呢?
键值对是开发中常用的一种数据类型,"key = value"(键值对),可以存入Key和Value,通过Key便能查询到Value。在这个举个简单的例子:你手机通讯录联系人的名字和电话号码就可以看成键值对,姓名是键,电话号码是值,这样一组合就构成了键值对('张三':'13500000000')。
开始食用
创建字典,上面刚刚说了字典是用{}来表示的,那么字典也是用{}来创建的,具体方法如下:
dictionaries1 = {'name':'Mary','sex':'woman','height':'170','weight':'65'} #创建字典dictionaries1
dictionaries2 = {'name':'John','sex':'man','height':'175','weight':'60'} #创建字典dictionaries2
dictionaries3 = {'name':'Pete','sex':'man','height':'168','weight':'62'} #创建字典dictionaries3
print(dictionaries1) #打印字典dictionaries1
print(dictionaries2) #打印字典dictionaries2
print(dictionaries3) #打印字典dictionaries3
输出结果:
{'name': 'Mary', 'sex': 'woman', 'height': '170', 'weight': '65'}
{'name': 'John', 'sex': 'man', 'height': '175', 'weight': '60'}
{'name': 'Pete', 'sex': 'man', 'height': '168', 'weight': '62'}
也可以使用dict()函数来创建字典,只不过创建的是一个空字典,什么是空字典呢?空字典顾名思义,字典里没有任何数据。
dictionaries1 = dict() #使用dict()函数创建字典,这是个空字典
print(dictionaries1) #打印dictionaries1字典
print(type(dictionaries1)) # 查看类型
输出结果:
{}
<class 'dict'>
访问字典里面的值的时候就会用到[]符号,具体格式:字典名['键']:
dictionaries = {'name':'Mary','sex':'woman','height':'170','weight':'65'} #创建字典dictionaries
print(dictionaries['name']) #输出字典dictionaries里面name(键)所对应的值
print(dictionaries['sex']) #输出字典dictionaries里面sex(键)所对应的值
print(dictionaries['height']) #输出字典dictionaries里面height(键)所对应的值
print(dictionaries['weight']) #输出字典dictionaries里面weight(键)所对应的值
输出结果:
Mary
woman
170
65
如果访问字典里没有的键值对是那么就会报错。
接下来就是对字典里面的信息进行更新和添加了。
更新字典里面的数据和更新列表里面的数据方法是一样的:字典名['键'] = '需要更新的内容':
dictionaries = {'name':'Mary','sex':'woman','height':'170','weight':'65'} #创建字典dictionaries
dictionaries['sex'] = 'man' #把字典中sex对应的值更新为man
#更新后的字典为:
dictionaries = {'name':'Mary','sex':'man','height':'170','weight':'65'}
往字典里面添加数据也很简单:字典名['需要添加的键'] = '需要添加到值':
dictionaries = {'name':'Mary','sex':'woman','height':'170','weight':'65'} #创建字典dictionaries
dictionaries['vocation'] = 'student' #向字典dictionaries中添加'vocation': 'student'
#添加后的字典为:
dictionaries = {'name':'Mary','sex':'woman','height':'170','weight':'65','vocation':'student'}
最后就是删除,删除使用del方法,del方法不光可以删除某一个键值对,也可以删除某个字典:
dictionaries = {'name':'Mary','sex':'woman','height':'170','weight':'65'} #创建字典dictionaries
del dictionaries['sex'] #删除字典dictionaries里面的'sex':'woman'
#删除后的字典为:
dictionaries = {'name': 'Mary', 'height': '170', 'weight': '65'}
del dictionaries #删除字典dictionaries
不要去打印以一个已经删除了的字典和键值对,不然会报错。
在字典中是不允许出现一个键出现两次的,如果一个键被赋值两次,那么最后一次赋的值会被存储。
字典内置函数:
| 序号 | 函数及描述 | |----|-----------------------------------------| | 1 | len(dict)计算字典元素个数,即键的总数。 | | 2 | str(dict)输出字典,可以打印的字符串表示。 | | 3 | type(variable)返回输入的变量类型,如果变量是字典就返回字典类型。 |
字典内置函数
字典内置方法:
| 序号 | 函数及描述 | |----|---------------------------------------------------------------------------| | 1 | dict.clear()删除字典内所有元素 | | 2 | dict.copy()返回一个字典的浅复制 | | 3 | dict.fromkeys()创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值 | | 4 | dict.get(key, default=None)返回指定键的值,如果键不在字典中返回 default 设置的默认值 | | 5 | key in dict如果键在字典dict里返回true,否则返回false | | 6 | dict.items()以列表返回一个视图对象 | | 7 | dict.keys()返回一个视图对象 | | 8 | dict.setdefault(key, default=None)和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default | | 9 | dict.update(dict2)把字典dict2的键/值对更新到dict里 | | 10 | dict.values()返回一个视图对象 | | 11 | pop(key[,default])删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。 | | 12 | popitem()返回并删除字典中的最后一对键和值。 |
字典内置方法
以上函数和方法就不一一举例,请自行敲写。
总结
字典是python程序中很常用的一种数据类型,多练习就能熟能生巧。