python中的字典及操作 python字典的方法或操作

liftword4个月前 (12-18)技术文章58

## 字典的基本结构

字典是关联数组或映射的别称,通过散列表实现。其主要由键值对组成,如:{key: value, }。列表中的值通过整数索引进行访问,也就是元素在列表中的位置,而字典中的值则通过关联的键进行访问。列表的创建如下:x = [],而字典则通过:y = {}。列表不允许对不存在的元素赋值,如:x[0] = 'a',而字典则可以:y[0] = 'a'。字典可使用非整数键来存储和使用数据,而列表则只能通过整数索引,如:y['hello'] = 'world'。

列表和字段的值可以为任意类型,但列表只能使用整数对值进行索引,而字典则可使用任何不可变的,可散列的对象,如字符串,frozenset等。元组虽然是不可变的,但当其包含了可变元素时会导致散列的结果变化,如元组的元素为列表或者字典,这时元组不可作为键,而元组只包含不可变的元素时,可作为字典的键,如:(1, 'a',)。

## 字典的基本操作

上面简单介绍了字典的创建,赋值和访问,此外字典还支持很多其他操作,可通过:python -m pydoc -p2222,然后访问:localhost:2222/builtins.html#dict,进行查看。常用的有:len(dict)返回字典条目数量;dict.keys()获取字典所有的键;values获取字典中所有的值;items返回字典中所有的键值对;del删除字典中指定条目;in判断某个键是否在字典中存在;get返回字典中指定键关联的值,如不存在则返回None或返回函数第二个参数指定的值;copy返回字典的浅拷贝,如需深拷贝,需要导入copy.deepcopy进行复制;update使用参数字典中的键值对更新调用者的键值对。更多操作可访问库文档查看。

## 字典的应用

后续数据分析和深度学习相关的内容中会大量涉及矩阵运算,当对矩阵进行存储的时候,如果大量节点的数值都为0,此时的矩阵被称之为稀疏矩阵,可使用字典只存储那些少量的非零节点,如:{(0, 0): 1, (3, 3): 5},这样就可以节省大量的存储空间。另外,当某个计算结果需要大量重复使用,但计算过程比较复杂耗时,或者需要消耗大量的网络或者IO的时候,可以计算一次之后,使用字段将结果缓存起来,在整个过程中重复使用。其实,大型应用中的redis之类的缓存系统就是起这个作用的。另外,spark计算平台也是通过类似的思想对hadoop的分布式计算过程的中间结果进行缓存和重复使用进行优化的。后续也都会针对相关内容进行介绍,敬请期待。



"橙汁数据"(微信公众号),长期关注大数据的收集处理与分析,深度学习与人工智能应用,如有大数据或智能应用相关业务,欢迎关注"橙汁数据"(微信公众号)洽谈咨询;

相关文章

Python小案例43-字典的操作和方法

Python字典是一种无序、可变的数据类型,用于存储键值对。下面是一些常用的字典操作和方法:创建字典:使用花括号{}和冒号:来创建字典,例如:my_dict = {'key1': &#...

python 字典(dict)之创建、访问、修改及小案例

字典(1)在Python中,字典是一系列[键:值]对 。(2)每个键都与一个值相关联,你可以使用键来访问与之相关联的值。与键相关联的值可以是数字、字符串、列表乃至字典。事实上,可将任何Python对象...

在python中如何使用字典 python 字典的用法

另一个非常有用的 Python 内建数据类型是字典,字典在某些语言中可能称为联合内存(associative memories)或联合 数组(associative arrays)。序列是以连续的整数...

Python- 将 While 循环与列表和字典一起使用

处理多个用户输入:While 循环可以通过将多个输入存储在列表或字典中来收集和管理它们。与 for 循环不同,while 循环可以在执行过程中修改列表,使其可用于动态管理数据(如用户输入)。在列表之间...

python字典dict入门 python 字典用法

了解如何在 Python 中遍历字典作为 Python 开发人员,您经常会遇到这样的情况:在对现有字典的键值对执行某些操作时,您需要遍历现有字典。 。当谈到在 Python 中迭代字典时, 使用 fo...