Python零基础入门之九字典

2017-01-14 08:42:43来源:CSDN作者:BeMoreQuiet人点击

这篇博客主要是学习一下Python中的字典这种数据结构。字典是Python中唯一的映射类型。
1.字典的定义
字典的特征是字典的标志是花(大)括号,字典中的元素使用键值对的方式。一个键值对作为一个数据项。
2.创建字典的方法
(1)使用定义法

dict1={'李宁':'一切皆有可能','耐克':'Just do it','阿迪达斯':'Impossible is nothing','鱼C工作室':'编程让世界更美好'}print("鱼C工作室的口号是:",dict1["鱼C工作室"])print("/n")dict2={1:'one',2:'two',3:'three'}#可以使用键作为索引获得相应的值。print(dict2[1])print('/n')

这里写图片描述
2.使用dict()函数来创建一个字典
值得注意的是dict()只有一个参数

#之所以会有那么多的括号,是因为dict函数只有一个参数dict3=dict((('F',70),('i',105),('s',115),('h',104),('C',67)))print(dict3)print('/n')

这里写图片描述

(3)使用dict()+关键字参数创建一个字典
值得注意的是:关键字参数并没有引号

dict4=dict(小甲鱼="编程让世界更加美好",苍井空="让AV征服宅男")print(dict4)

这里写图片描述

3.修改字典中的项
(1)修改字典中存在的项

dict4['苍井空']="AV不是宅男的福利"print(dict4)

这里写图片描述

(2)修改字典中不存在的项
这个比较特殊,不但不会出现异常,而且会在字典中插入该数据项

dict4['爱迪生']="天才是99%的汗水加上1%的灵感"print(dict4)

这里写图片描述

4.字典的内置函数
(1)fromkeys(S[,v]) 创建一个字典并返回一个字典,第二个参数默认值为
None.

dict1={}dict1=dict1.fromkeys((1,2,3))print(dict1)print("/n")dict1=dict1.fromkeys((1,2,3),('numbers'))print(dict1)

这里写图片描述

(2)keys()函数:获取字典的所有的键

dict1=dict1.fromkeys(range(32),"赞")print(dict1)for eachkey in dict1.keys():     print(eachkey,end=" ")print("/n")

这里写图片描述

(3)values()函数:获取字典的所有的值

#values()所有值的集合for eachvalue in dict1.values():     print(eachvalue,end=" ")print("/n")

这里写图片描述

(4)items()函数:获取函数的所有项

for eachitem in dict1.items():     print(eachitem,end=" ")

这里写图片描述

(5)get()函数获得字典键对应的值,如果不存在则返回None

str1=dict1.get(32)print(str1)

这里写图片描述

(6)in 或者not in 成员关系判断符:判断一个键或者值是否在字典中

print("/n")print(32 in dict1)print("/n")

这里写图片描述

(7)clear():清空字典中的所有项

dict1.clear()print(dict1)

这里写图片描述

(8)update()函数:使用一个字典更新另一个字典的内容

a={1:"one"}b={1:"two"}a.update(b)print(a)

这里写图片描述

最后再来说一下使用“=”(赋值符号)和使用拷贝函数的不同:
总的来说使用赋值符号只是创建了一个指向给数据的标签,但还是共用一份数据,类似于人的大小名字。而使用函数时完完全全没有关系的数据。

print("/n")list1=['1','2','3']list2=list1[:3]list3=list1print(id(list1))print(id(list2))print(id(list3))print(list2)print(list3)list1[0]="666"print(list2)print(list3)#根据id可知,字典的赋值操作创建了一个指向#数据的一个标签,并不是真正意义上的拷贝a={"姓名":"小甲鱼"}b=aprint(id(a))print(id(b))print(b)#将a指向了空字典,而不是改变其数据的大小#这里类似于指针的赋值,指针的赋值是将地址的赋值#而不是数据的赋值a={}#空集类似于空指针print(id(a))print(a)print(b)#赋值与全拷贝函数,区别类似于上面a={1:'one',2:'two',3:'three'}b=a.copy()c=aprint(id(a))print(id(b))print(id(c))print(a)print(b)print(c)

这里写图片描述

字典的知识到此为止,如果再有会及时补充。

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台