以下是我的作業代碼:
import numpy as np
test = [{"test":np.array([["value1,value1"],["value2,value2"]])},{"names":
["test1","test2"]}]
q = ["value3,value3"]
v = ["test3"]
for p in test:
for item,value in p.items():
if str(item).startswith("test"):
p["test"] = np.append(p["test"],np.array([q]))
if str(item).startswith("names"):
for r in v:
p["names"].append(r)
我需要如下輸出:
[{'test': array([['value1,value1'], ['value2,value2'], ['value3', 'value3']],
dtype='<U13')},
{'names': ['test1', 'test2', 'test3']}]
但目前我得到如下:
[{'test': array(['value1,value1', 'value2,value2', 'value3', 'value3'], dtype='<U13')},
{'names': ['test1', 'test2', 'test3']}]
我在哪里犯了愚蠢的錯誤?謝謝你。
uj5u.com熱心網友回復:
您需要附加到特定軸:
for p in test:
for item,value in p.items():
if str(item).startswith("test"):
p["test"] = np.append(p['test'], [q], axis=0) # changed here
if str(item).startswith("names"):
for r in v:
p["names"].append(r)
輸出:
[{'test': array([['value1,value1'],
['value2,value2'],
['value3,value3']], dtype='<U13')},
{'names': ['test1', 'test2', 'test3']}]
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/480010.html
標籤:Python 数组 麻木的 排序 numpy-ndarray
