Python collections笔记-defaultdict,deque

 
最近系统的学习了一遍python的基础,python是真的很方便呀!实验对结果数据要画图,python有很好的库帮助我得出数据可视化的结果。
 

collections-defaultdict

python中的字典使用起来非常方便,但是在使用过程中,希望字典的value值是一个列表,即一个键key储存了一个列表的信息。collection里面的defaultdict可以存储以上的数据结构。

from collections import defaultdict

arr = defaultdict(list)  # 创建一个defaultdict的字典
for key in range(1, 5):  # 有4个键,1--4
    for v in range(1, key + 1):  # 字典的value是一个列表,列表的长度为key的值
        arr[key].append(v)  # 将v放入键值为“key”对应的列表里面
print(arr)  
# {1: [1], 2: [1, 2], 3: [1, 2, 3], 4: [1, 2, 3, 4]}

这样就可以建立一个存储列表的字典。在实验中用的蛮多的。

比如我将网络划分为不同的小圈子,需要存储每个圈子里面的节点,因为圈子里面节点的数量是不确定且不相同的,所以需要——能够存储列表的字典——这样一种数据结构来存放网络的结构。
  

collections-deque

deque创建了一个队列,使用该方法的效率会高过直接用list表示队列的方法。

from collections import deque

queue = deque(["A", "B", "C"])  # 创建一个deque对象
queue.append("D")  # 向里面添加元素
queue.append("E")
queue.popleft()  # 弹出列表第一个元素,返回该元素值
queue.popleft()
print(queue)  # deque(['C', 'D', 'E'])

你可能感兴趣的:(语言,python)