numpy中數組的復制(神坑)


import numpy as np 

# numpy 數組的復制和 python的list數組的復制是不同的
# 對於python的數組, 可以通過索引,完全復制新的數組
a = [1,2,3,4]
b = a[:]
#這里的 a 和 b是兩個完全獨立的數組,但是對於numpy並非如此

a_np = np.array([1,2,3,4])
b_np = a[:]
a_np[1] = 100
print(a_np)
print(b_np)
print(type(a_np))
print(type(b_np))
# 這里輸出的a_np和b_np都是1, 100, 3, 4
# 要想完全復制a_np,要通過調用copy()
# 實際上這里的b_np並不是np數組,而是python的list
c_np = a_np.copy()
a_np[2] = 100
print(a_np)
print(c_np)
print(type(a_np))
print(type(c_np))
# 這里的輸出結果是不同的,
# a_np是1, 100, 100, 4
# c_np是1, 100, 3, 4

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM