首页 > 应用开发 > Python > Python18:什么是字典
#少儿编程# 前面已经向小朋友们介绍了Python的列表,它是一种组合数据类型,也就是说列表里数据是可以多种类型(数字、字符串、列表等)的,同时Python还提供了很多方法和函数来操作列表。 虽然列表很棒,但有时它并不一定是复杂数据的最佳选择。比如小朋友们有一份班上同学的联系方式 图1 这些数据如果用列表记录,就是图2的样子。 图2 很明显,这种记录方式有点乱,用专业的说法就是这些数据缺乏结构。这个时候,Python的字典类型就非常适合。 什么是字典 什么样的数据是有结构的,比如我们有一个列表student,它的数据是: student=[ “小po” , ” 2010-01-01” , “鼓楼区” , “Nanjing小学” ] 很显然,这个列表并不能很明晰的告诉我们每个数据项是什么意思。如果数据很多的话,处理起来会非常的麻烦。其实列表student的数据还是有一个很明确的结构的:学生名字、出生日期、居住区域、就读的学校。如图3: 图3 那么这样有着明确结构的数据,在Python中我们用什么存储呢?用另一个组合数据类型:字典(dictionary)。 Python字典是一种将两个东西关联在一起的方式,被关联的两个东西分别称为键(key)和值(value)。字典中所有项都有一个键和一个值,他们合起来被称为键值对(key-value)。一个字典就是一些键值对的集合。 上面图3中的name、birthday、region和school就是键,“小po”、“2010-01-01”、“鼓楼区”和“Nanjing小学”就是与键相对应的值。 创建字典 我们现在要用字典来记录动画片信息。Python创建字典有两种方式: 1)一种方法是直接创建带元素的字典 字典的形式是{ 键:值 }(或者{ key : value }),键和值之间用冒号“:”相隔,外面用花括号{ }括起来。这里我们以名字为键,号码为值,如图4。 图4 2)另一种方法是先创建一个空字典,然后再添加元素 图5使用了这种方法: 图5 代码① phoneNumber={}:是创建空字典phoneNumber 代码②:是给字典phoneNumber添加元素。列表中添加可以使用列表自带的append()方法,但在字典中则没有提供添加新元素的方法,而是只需指定新的建和值就行了,比如:phoneNumber["小po"]="131-11111111" 访问字典 我们要访问字典中的元素,只要通过key就能访问它的值。比如我们想知道小po的电话号码,我们通过“小po”这个key来获得。有两种方法: 1)直接获取 我们想获取小po的电话号码,就把小po放入到方括号中,如图6中红框内的代码: 图6 注意:如果键是字符串的话,一定要用双引号把字符串引起来。 但这种方式有个问题,就是如果这个字典并没有你要查的键,系统会报错,如图7: 图7 图7中我们想查阿奇的电话号码,但是字典phoneNumber里并没有他的,所以系统会报错。 2)通过字典自带的方法get() 如上所述,一般来说,如果访问字典中不存在的项的时候,系统会报错。不过使用get()方法就不会,见图8: 图8 代码① 字典phoneNumber有“小po”这个键,运行phnoneNumber.get(“小po”)可以直接得到相对应的值。 代码② 字典phoneNumber没有“阿奇”这个键,运行phnoneNumber.get(“阿奇”)也不会报错,而是得到None值。 删除字典元素 如果我们想删除字典某一元素,可以用“del” 这个命令。图9中红框内的代码就是删除了字典phoneNumber中键为“军军”的元素。 图9 修改字典 我们要想修改某个键的值,可以直接重新给这个键赋值,见图10: 图10 代码① phoneNumber["阿奇"]="131-12345678":因为字典phoneNumber没有“阿奇”这个键,所以这行代码就是直接添加“阿奇”这项。 代码② phoneNumber["阿奇"]="131-66666666":由于这时已经有“阿奇”这项了,所以再直接赋值就是修改它的值了。 原创不易,请勿抄袭。欢迎大家关注我,和我多交流,如果你喜欢,请转赞评三连,谢谢。 http://p2.so.qhmsg.com/t01baa3fdaae829efe8.jpg"
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69986202/viewspace-2729682/ ,如需转载,请注明出处,否则将追究法律责任。