Python重新排列Di的numpy数组的最有效方法

2024-04-26 15:08:31 发布

您现在位置:Python中文网/ 问答频道 /正文

下面的代码创建这种格式的dict

{'a': array([1, 2...1000]), 'b': array([1, 2...1000])....

old_dict = dict(a=np.array([]),
           b=np.array([]),
           c=np.array([]),
           new_dict=np.array([]),
           e=np.array([]),
           f=np.array([]),
           g=np.array([]),
           h=np.array([]))

for x in range(10000):
    old_dict['a'] = np.append(old_dict['a'], x)
    old_dict['b'] = np.append(old_dict['b'], x)
    old_dict['c'] = np.append(old_dict['c'], x)
    old_dict['d'] = np.append(old_dict['d'], x)
    old_dict['e'] = np.append(old_dict['e'], x)
    old_dict['f'] = np.append(old_dict['f'], x)
    old_dict['g'] = np.append(old_dict['g'], x)
    old_dict['h'] = np.append(old_dict['h'], x)

我想把这个dict转换成这样的dict列表

[{'a': 1, 'b': 1....}, {'a': 2, 'b': 2....},.....]

我想出了这个密码

new_list_dict = []
for i, (key, val) in enumerate(old_dict.items()):
   _d = {}
   for k, v in old_dict.items():
      _d[k] = v[i]
   new_list_dict.append(_d)

但是你能建议最快的方法吗


Tags: 代码in密码列表newfor格式np