list元素是一維array的情況:
a = np.array([1
,2])
b = np.array([5
,6,7
])c =[a,b]
d = np.array(c)
轉換成功:
2. list元素是二維array的情況:
a = np.array([[
1,2]
,[3,
4]])
b = np.array([[
5,6,
7],[
8,9,
10]])
c =[a,b]
d = np.array(c)
由於a、b陣列的shape分別為(2,2)、(2,3),因此會報錯valueerror: could not broadcast input array from shape(2,2) into shape (2).此時有兩種方法解決:1. 展開陣列;2. 利用mask統一shape ,參考:
a = np.zeros(2)
b = np.ones(3)
print
(a)# [0. 0.] a
print(id
(a))
# 140671659430096 a位址
print
(b)# [1. 1. 1.] b
print(id
(b))
# 140671659430576 b位址a[:
]= b[:2
]# 切片並賦值(a、b都切片)
print
(a)# [1. 1.]
print(id
(a))
# 140671659430096 a位址未變a[0
]=0# 改變a中元素的值
print
(a)# [0. 1.]
print
(b)# [1. 1. 1.] b未改變,因為切片為深拷貝
a = b[:2
]# 切片並賦值(a未切片)
print
(a)# [1. 1.]
print(id
(a))
# 140671658719152 a有了新的位址a[0
]=0# 改變a中元素的值
print
(a)# [0. 1.]
print
(b)# [0. 1. 1.] b中元素值隨之改變
a = b # 直接賦值 淺拷貝
print
(a)# [0. 1. 1.]
print(id
(a))
# 140671659430576 a[0
]=1print
(a)# [1. 1. 1.]
print
(b)# [1. 1. 1.]
List轉換陣列 陣列轉換List
陣列轉list package listtoarray import j a.util.arraylist import j a.util.arrays import j a.util.collections import j a.util.list import j a.util.stream.c...
List與陣列實體的轉換
1.list轉換成為陣列。這裡的list是實體是arraylist 呼叫arraylist的toarray方法。toarray public t toarray t a 返回乙個按照正確的順序包含此列表中所有元素的陣列 返回陣列的執行時型別就是指定陣列的執行時型別。如果列表能放入指定的陣列,則返回放...
List陣列轉換
1.list轉換成為陣列。這裡的list是實體是arraylist 呼叫arraylist的toarray方法。toarray public t toarray t a 返回乙個按照正確的順序包含此列表中所有元素的陣列 返回陣列的執行時型別就是指定陣列的執行時型別。如果列表能放入指定的陣列,則返回放...