python集合应用场景_python 集合的应用
應用場景
磁盤資產采集信息,與數據庫中的磁盤信息需要進行對比,再資產入庫,對于采集的多余的插巢屬于新增的磁盤,對于相同的插巢可能是磁盤容量變更,對于數據庫中有但是采集信息中沒有的插巢是資產中刪除的磁盤。
原始信息
#1/#2/#4/#4 等為插巢信息,需要比對的就是插巢的增加/刪除/不變的信息
采集信息
disk_info = {
'#1': {'factory': 'x1', 'model': 'x2', 'size': 600},
'#2': {'factory': 'x1', 'model': 'x2', 'size': 500},
'#3': {'factory': 'x1', 'model': 'x2', 'size': 600},
'#4': {'factory': 'x1', 'model': 'x2', 'size': 500},
}
數據庫信息
disk_queryset = [
{'slot': '#1', 'factory': 'x1', 'model': 'x2', 'size': 200},
{'slot': '#2', 'factory': 'x1', 'model': 'x2', 'size': 1000},
{'slot': '#6', 'factory': 'x1', 'model': 'x2', 'size': 500},
]
數據處理
先把插巢信息提取出來,轉化成插巢的集合。
disk_set = set(disk_info) #字典中的key 元素組成集合
print(disk_set,type(disk_set))
disk_queryset_set = set(row['slot'] for row in disk_queryset) #for 循環列表,每個元素字典取值slot作為set元素,最后組成集合
print(disk_queryset_set,type(disk_queryset_set))
#求相同
r1 = disk_set & disk_queryset_set
#字典有列表沒有
r2 = disk_set - disk_queryset_set
#列表有字典沒有
r3 = disk_queryset_set - disk_set
總結
以上是生活随笔為你收集整理的python集合应用场景_python 集合的应用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python36安装numpy_安装nu
- 下一篇: python如何自动缩进_Python缩