基于numpy中數(shù)組元素的切片復(fù)制方法
代碼1:
#!/usr/bin/python import numpy as np arr1 = np.arange(10) print(arr1) slice_data = arr1[3:5] print(slice_data) slice_data[0] = 123 print(slice_data) print(arr1)
類似的代碼之前應(yīng)用過,簡單看了一下numpy中的數(shù)組切片。
程序的執(zhí)行結(jié)果如下:
In [2]: %run exp01.py [0 1 2 3 4 5 6 7 8 9] [3 4] [123 4] [ 0 1 2 123 4 5 6 7 8 9]
由此得出來的結(jié)論是:切片后的變量與原始的數(shù)據(jù)共享同一數(shù)據(jù)存儲(chǔ)。而這種特點(diǎn)是專門針對大數(shù)據(jù)的處理而定制的。然而,在日常的使用中總有需要對數(shù)據(jù)進(jìn)行拷貝的時(shí)候,此時(shí)需要的便是顯式的數(shù)據(jù)復(fù)制操作。
程序修改如下:
#!/usr/bin/python import numpy as np arr1 = np.arange(10) print(arr1) slice_data = arr1[3:5].copy() print(slice_data) slice_data[0] = 123 print(slice_data) print(arr1)
程序的執(zhí)行結(jié)果如下:
In [3]: %run exp01.py [0 1 2 3 4 5 6 7 8 9] [3 4] [123 4] [0 1 2 3 4 5 6 7 8 9]
由上面的結(jié)果可以看出,通過切片后復(fù)制操作生成的新的數(shù)據(jù)對象的操作與原始的數(shù)據(jù)是獨(dú)立的。新的數(shù)據(jù)對象的變化并不會(huì)影響到原始數(shù)據(jù)的信息。
以上這篇基于numpy中數(shù)組元素的切片復(fù)制方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
python實(shí)現(xiàn)畫五角星和螺旋線的示例
今天小編就為大家分享一篇python實(shí)現(xiàn)畫五角星和螺旋線的示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01
PyTorch的張量tensor和自動(dòng)求導(dǎo)autograd詳解
這篇文章主要介紹了PyTorch的張量tensor和自動(dòng)求導(dǎo)autograd,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02
pymysql實(shí)現(xiàn)增刪改查的操作指南(python)
python中可以使用pymysql來MySQL數(shù)據(jù)庫的連接,并實(shí)現(xiàn)數(shù)據(jù)庫的各種操作,這篇文章主要給大家介紹了關(guān)于pymsql實(shí)現(xiàn)增刪改查的相關(guān)資料,需要的朋友可以參考下2021-05-05
利用Python構(gòu)建Flutter應(yīng)用的教程詳解
Flutter在軟件研發(fā)領(lǐng)域是非常流行的,今天就讓我們深入了解一下,用?Python構(gòu)建flutter應(yīng)用程序的世界,感興趣的小伙伴可以跟隨小編一起了解一下2022-12-12
pyinstaller打包django項(xiàng)目的實(shí)現(xiàn)步驟
本文主要介紹了pyinstaller打包django項(xiàng)目的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09
Django請求響應(yīng)Web Http交互的核心機(jī)制深入理解
本文深入探討了 Django 中的請求與響應(yīng)處理,從 Django 請求和響應(yīng)的基礎(chǔ)知識(shí)、生命周期,到 HttpRequest 和 HttpResponse 對象的詳細(xì)介紹,同時(shí),討論了 Django 的視圖和請求、響應(yīng)處理,以及安全性和異步處理的考慮2023-09-09

