python numpy數(shù)組中的復(fù)制知識解析
這篇文章主要介紹了python numpy數(shù)組中的復(fù)制知識解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
vector = numpy.array([5, 10, 15, 20]) equal_to_ten_or_five = (vector == 10) | (vector == 5) vector[equal_to_ten_or_five] = 50 print(vector)
第一次看到這個的時候一臉懵逼,后來分析了下懂了下面記錄下,方便下次看看
第一行分析:
結(jié)果5, 10, 15, 20
第二行分析:
vector == 10 數(shù)組和值比對獲得結(jié)果是每個元素和這個數(shù)比較生成相應(yīng)的bool數(shù)組 這里的話就知道了結(jié)果是[Flase,True,Flase,Flase]
vector == 5就是[True,Flase,Flase,Flase]
然后進(jìn)行或'|'運算得到了[True,True,Flase,Flase]
著兩個數(shù)組進(jìn)行或運算的時候是數(shù)組直接相同序號的元素或元素然后得到新的數(shù)組(遵循規(guī)則F|F =F,F|T=T,T|T=T)
此時equal_to_ten_or_five 就等于[True,True,Flase,Flase]
第三行分析:
vector[equal_to_ten_or_five]=50 會給等于True的復(fù)制為50 其他的不變也就是此時
vector等于[50,50,15,20]
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

