av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

Python 用NumPy創建二維數組的案例

瀏覽:97日期:2022-06-25 13:50:17
前言

上位機實戰開發先放一放,今天來學習一個新的內容—NumPy的使用

1 一維數組

例:用普通方法生成一維數組

num = [0 for i in range(1,5)] # 創建一維數組print(num) # 打印數組print('-'*50) # 分割線num[2]=6 # 將第三個元素修改位6print(num) # 打印數組print('-'*50) # 分割線

運行結果

Python 用NumPy創建二維數組的案例

例:用numpy生成一維數組

from numpy import *m1 = arange(5)print(m1)print('-'*50) # 分割線

運行結果

Python 用NumPy創建二維數組的案例

2 二維數組

例:用普通方法生成二維數組

num = [[0 for i in range(1,5)]for j in range(1,5)]print(num) # 打印數組print('-'*50) # 分割線num[2][1]=3 # 將第三行第二個元素修改為3print(num) # 打印數組print('-'*50) # 分割線

運行結果

Python 用NumPy創建二維數組的案例

例:用numpy生成二維數組

from numpy import *m1 = array([arange(1,4),arange(4,7),arange(7,10),arange(10,13),arange(13,16),arange(16,19)]) # 創建6行3列的二維數組print(m1)print('-'*50) # 分割線

運行結果

Python 用NumPy創建二維數組的案例

通過上圖發現,用普通方法創建的數組分隔符有逗號,而numpy創建的數組分隔符默認為空格。

3 二維數組的分片

請看程序注釋以及結果對照

from numpy import *m1 = array([arange(1,4),arange(4,7),arange(7,10),arange(10,13),arange(13,16),arange(16,19)]) # 創建6行3列的二維數組print(m1)print('-'*50) # 分割線print(m1[1][0:]) # [x][0:] 獲取第x行的全部元素(單行)print('-'*50) # 分割線print(m1[1:3]) # [x1:x2] 獲取第x1~x2行的全部元素(多行)print('-'*50) # 分割線print(m1[1::4]) # [x1::x2] 分片操作,從第x1行開始,步長為x2

運行結果

Python 用NumPy創建二維數組的案例

4 數組維度的操作

.reshape:將一維數組變成多維數組

用法:一維數組名.reshape(x,y,z)將一維數組改成三維數組

from numpy import *m1 = array([arange(1,9)]) # 創建一維數組print(m1)print('-'*50) # 分割線print(m1.reshape(2,2,2)) # 將一維數組轉為三維數組print('-'*50) # 分割線

運行結果

Python 用NumPy創建二維數組的案例

.ravel或flatten:將多維數組變為一維數組

用法:數組名.ravel()或 數組名.flatten()

from numpy import *m1 = array([arange(1,4),arange(4,7),arange(7,10),arange(10,13),arange(13,16),arange(16,19)]) # 創建6行3列的二維數組print(m1)print('-'*50) # 分割線print(m1.ravel()) # 將一維數組轉為三維數組print('-'*50) # 分割線

運行結果

Python 用NumPy創建二維數組的案例

.shape:將 高維數組 轉換成 低維數組

用法:數組名.shape(x行,列)

.transpose:將數組進行轉置

用法:數組名.transpose()

from numpy import *m1 = array([arange(1,4),arange(4,7),arange(7,10),arange(10,13),arange(13,16),arange(16,19)]) # 創建6行3列的二維數組print(m1)print('-'*50) # 分割線print(m1.transpose()) # 將數組轉置print('-'*50) # 分割線

運行結果

Python 用NumPy創建二維數組的案例

5 數組的組合與分隔

5.1 水平組合

hastck:將數組水平拼接到一起

用法:hastck((數組A,數組B))水平拼接數組A和B

5.2 垂直組合

vstack:將數組垂直拼接到一起

用法:vstack(數組A,數組B)垂直拼接數組A和B

5.3 水平分隔

hsplit:

用法:hsplit(數組名,x)x為分成幾部分

5.4 垂直分隔

vsplit:

用法:vsplit(數組名,x)x為分成幾部分

6 數組轉列表

.tolist:將數組轉列表

用法:數組名.tolist()

7 數組的存儲和讀取及分隔符

savetxt和loadtxt函數可將數組保存為CSV文件。CSV文件的分隔符包括空格,逗號,分號等。savetxt和loadtxt函數默認使用的時空格作為分割符,也可以用delimiter關鍵字指定分隔符。

7.1數組的存儲

savetxt

用法:savetxt(“文件名.txt”,數組名,fmt=數組格式,delimiter=’;’)

補充:數組格式可以為 整數型(%d)浮點型(%f)

from numpy import *m1 = array([arange(1,4),arange(4,7),arange(7,10),arange(10,13),arange(13,16),arange(16,19)]) # 創建6行3列的二維數組print(m1)print('-'*50) # 分割線savetxt('文件名.txt',m1,fmt=’%d’,delimiter=’;’)

運行結果1

Python 用NumPy創建二維數組的案例

運行結果2(分隔符為空格)

Python 用NumPy創建二維數組的案例

7.2數組的讀取

loadtxt

用法:新數組 = loadtxt(“文件名.txt”,dtype=‘數組格式’,delimiter=’,’)

補充:數組格式可以為 整數型(int)浮點型(float)

from numpy import *print('-'*50) # 分割線a = loadtxt('文件名.txt',dtype=int,delimiter=’;’)print(a) # 將數組轉置print('-'*50) # 分割線

運行結果

Python 用NumPy創建二維數組的案例

總結

savetxt在保存數據時也可以將普通數組中的分隔符改為空格

利用這個方法我們可以將帶有逗號的二維數組改為分隔符為空格或者分號的二維數組。

例:用列表的方法寫一個二維數組

# 二維數組創建from numpy import *num = [[0 for j in range(1,5)]for i in range(1,4)]print(num) # 打印數組print('-'*50) # 分割線num[2][1]=3 # 將第三行第二個元素修改為3print(num) # 打印數組print('-'*50) # 分割線savetxt('a.txt',num,fmt=’%d’,delimiter=’ ’) # 將數組保存為分隔符為空格的形式b = loadtxt('a.txt',dtype=int,delimiter=’ ’) # 將數組讀取出來賦給新數組print(b) # 打印新數組print('-'*50) # 分割線

運行結果

Python 用NumPy創建二維數組的案例

先將數組保存,然后讀取數組

Python 用NumPy創建二維數組的案例

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。如有錯誤或未考慮完全的地方,望不吝賜教。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 成人aaa | 国产成人精品亚洲 | 男女啪啪免费视频 | 精品国产一区二区三区四区 | 在线观看国产小视频 | 二区在线观看 | 中文字幕av一区 | 日韩久久久久久久 | 国产高潮在线观看 | 免费黄色大片 | 免费理论片| 国产女人高潮视频 | 特黄老太婆aa毛毛片 | 欧美在线观看视频 | 高潮毛片无遮挡免费看 | 日韩欧美国产精品 | 国产成人三级在线观看 | 国产黄a三级三级三级看三级男男 | 91蜜桃视频 | 久久久久久久国产精品 | 青青久久久 | 国产性hd | 午夜高清| 日韩视频一区二区 | 精品第一页| 午夜黄色影院 | 成人高清免费 | 韩国精品一区二区 | av老司机在线| 欧美男人天堂 | 成人免费看片98欧美 | 亚洲综合激情网 | 国产视频一二三 | 一区二区小视频 | 欧美一区| 欧美一区二区视频在线观看 | 欧美不卡一区二区三区 | 日韩精品免费一区二区夜夜嗨 | 热久久免费视频 | 欧美久久久| 五月激情丁香 |