您的位置:首页 > 理论基础 > 数据结构算法

Tricks(二十四)—— python 复合(嵌套)数据结构

2016-04-06 17:00 288 查看
保存数据,需要层层嵌套;

读取数据,也是抽丝剥茧,由外而内,一层层解嵌套;

1. list of tuples 仿真dict

这里的 tuple 一般为二元,仿真键值对

>>> l = [('name', 'zch'), ('age', 18)]


dict 可接受这样的二元 tuple,据此将其转换为 dict:

>>> d = dict(l)
{'age': 20, 'name': 'zch'}


2. list of lists 仿真矩阵

3. dict of dict 仿真图

这里表达的 dict of dict 可能不甚准确,嵌套字典也许会更恰当一些,说的是,外层字典的每一个 key 对应的 value 仍然是一个字典。此时访问具体元素时,仍然是两个中括号,[k1][k2].

4. list of ndarray(多维数组)

当然我们可以直接出创建三维数组,对二维数组进行叠加,只是 list 是一种我们更为熟悉的数据结构:

import numpy as np
topo = [3, 5, 1]
weights = [np.random.randn(j, i) for i, j in zip(topo[:-1], topo[1:])]


5. lists of Numpy Matrices

先逐个取出(使用中括号索引,list支持的索引方式),进行处理之后,在放到 list中,对,这就叫
list comprehension


nabla_w = [np.ones(w.shape) for w in self.weights]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: