node_incident = {'1': [2, 6, 7], '2': [1, 3, 6], '3': [2, 4, 5, 6], '4': [3, 5], '5': [3, 4, 6, 7], '6': [1, 2, 3, 5, 7], '7': [1, 5, 6]}
值中包含numpy创建矩阵来存贮更多相关信息
import numpy as np
node_incident = {'1': np.array(([2, 6, 7], [1, 3, 6])), '2': [1, 3, 6], '3': [2, 4, 5, 6], '4': [3, 5], '5': [3, 4, 6, 7], '6': [1, 2, 3, 5, 7], '7': [1, 5, 6]}
字典键对应数据的获取
node_incident.get('1')
以何种形式存储的值,则获取的值就是以什么形式输出
字典信息的增加 原有未存在的键值信息增加直接创建新的键值来新增信息
node_incident['8'] = [11, 22, 33]
在原有键的基础上新增值
新增单个值
# 方法一
node_incident['8'].append(9)
# 方法二
node_incident.update({'8': node_incident.get('8') + [10]})
新增列表
# 在列表的基础上末尾加入了一个新的列表,但'8'中的值仍是一个列表
node_incident['8'].append([9, 4])
# 在创建的np矩阵基础上再增加列表
node_incident['1'] = np.r_[node_incident.get('1'), np.array([[1, 2, 3]])]
当值的存储形式为矩阵式需要注意的是:
1.不能单纯的用.update配合+来进行,会对已有的矩阵做加法运算
node_incident.update({'1': node_incident.get('1') + [3, 4, 99]})
# 输出结果为:
# {'1': array([[ 5, 10, 106],[ 4, 7, 105]])
2.若后面直接将加入列表,则会改变其存储结构
node_incident.update({'1': np.append(node_incident.get('1'), [3, 4, 99])})
#实际输出结果为:
#'1': array([ 2, 6, 7, 1, 3, 6, 3, 4, 99])
## 因此语法存在错误,正确方式为:
node_incident['1'] = np.r_[node_incident.get('1'), np.array([[3, 4, 99]])]
# 想要的输出结果为:
# '1': array([[ 2, 6, 7],[ 1, 3, 6],[ 3, 4, 99]])
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)