目錄
使用List 建立陣列
使用陣列函數建立陣列
使用numpy 方法建立陣列
在Numpy 中建立陣列的方法
首頁 後端開發 Python教學 Python NumPy教程之數組的創建詳解

Python NumPy教程之數組的創建詳解

Aug 26, 2022 am 11:59 AM
python

【相關推薦:Python3影片教學

使用List 建立陣列

陣列用於在一個變數中儲存多個值。 Python 沒有對數組的內建支持,但可以使用 Python 列表代替。

範例:

arr = [1, 2, 3, 4, 5]
arr1 = ["geeks", "for", "geeks"]
登入後複製
# 用于创建数组的 Python 程序
 
# 使用列表创建数组
    arr=[1, 2, 3, 4, 5]
    for i in arr:
        print(i)
登入後複製

輸出:





5

使用陣列函數建立陣列

array(data type, value list) 函數用於建立一個數組,其參數中指定了資料類型和值列表。

範例:

# 演示 array() 工作的 Python 代码
  
# 为数组操作导入“array”
import array
  
# 用数组值初始化数组
# 用有符号整数初始化数组
arr = array.array('i', [1, 2, 3]) 
 
# 打印原始数组
print ("The new created array is : ",end="")
for i in range (0,3):
    print (arr[i], end=" ")
 
print ("\r")
登入後複製

輸出:

The new created array is : 1 2 3 1 5

使用numpy 方法建立陣列

NumPy 提供了幾個函數來建立具有初始佔位符內容的陣列。這些最大限度地減少了成長陣列的必要性,這是一項昂貴的操作。例如:np.zeros、np.empty等。

numpy.empty(shape, dtype = float, order = 'C'): 傳回給定形狀和類型的新數組,具有隨機值。

# 说明 numpy.empty 方法的 Python 代码
 
import numpy as geek
 
b = geek.empty(2, dtype = int)
print("Matrix b : \n", b)
 
a = geek.empty([2, 2], dtype = int)
print("\nMatrix a : \n", a)
 
c = geek.empty([3, 3])
print("\nMatrix c : \n", c)
登入後複製

輸出:

Matrix b : 
 [         0 1079574528]

Matrix a : 
 [[0 01 ]
 [0 0]]

Matrix a : 
 [[ 0.  0.  0.]
 [ 0.  0.  0.]
 [ 0. 0.  0 .]]

numpy.zeros(shape, dtype = None, order = 'C'): 傳回給定形狀和類型的新數組,帶零。

# 说明 numpy.zeros 方法的 Python 程序
 
import numpy as geek
 
b = geek.zeros(2, dtype = int)
print("Matrix b : \n", b)
 
a = geek.zeros([2, 2], dtype = int)
print("\nMatrix a : \n", a)
 
c = geek.zeros([3, 3])
print("\nMatrix c : \n", c)
登入後複製

輸出:

Matrix b : 
 [0 0]

Matrix a : 
 [[0 0 ]
 [0 0]]

Matrix c : 
 [[ 0.  0.  0.]
 [ 0.  0.  0.]
 [ 0.  0.  0.  0.]

 [ 0.  0.  0 .]]

重塑陣列

我們可以使用reshape

方法來重塑陣列。考慮一個形狀為 (a1, a2, a3, ..., aN) 的陣列。我們可以重新整形並將其轉換為另一個形狀為 (b1, b2, b3, ..., bM) 的陣列。

唯一需要的條件是: a1 x a2 x a3 … x aN = b1 x b2 x b3 … x bM 。 (即陣列的原始大小保持不變。)

numpy.reshape(array, shape, order = 'C'):

在不更改陣列資料的情況下對陣列進行整形。

# 说明 numpy.reshape() 方法的 Python 程序
 
import numpy as geek
 
array = geek.arange(8)
print("Original array : \n", array)
 
# 具有 2 行和 4 列的形状数组
array = geek.arange(8).reshape(2, 4)
print("\narray reshaped with 2 rows and 4 columns : \n", array)
 
# 具有 2 行和 4 列的形状数组
array = geek.arange(8).reshape(4 ,2)
print("\narray reshaped with 2 rows and 4 columns : \n", array)
 
# 构造 3D 数组
array = geek.arange(8).reshape(2, 2, 2)
print("\nOriginal array reshaped to 3D : \n", array)
登入後複製
輸出:


Original array : 
 [0 1 2 3 4 5 6 7]

array reshaped with 2 rows and 4 columns : 
 [[0 1 2 3]
 [4 5 6 7]]

array reshaped with 2 rows and 4 columns : 
 [[0 1]##[0 1]
 [2 3]
 [4 5]
 [6 7]]

Original array reshaped to 3D : 
 [[[0 1]
  [2 3]]

 [[4 5]

  [6 7]]]

為了建立數字序列,NumPy 提供了一個類似range 的函數,它會傳回數組而不是列表。

arange傳回給定間隔內均勻分佈的值。

長是指定的。

linspace 傳回給定間隔內均勻分佈的值。 編號

_ 的元素被回傳。

arange([start,] stop[, step,][, dtype]):

根據間隔傳回一個具有均勻間隔元素的陣列。所提及的間隔是半開的,即[開始,停止)

# 说明 numpy.arange 方法的 Python 编程
 
import numpy as geek
 
print("A\n", geek.arange(4).reshape(2, 2), "\n")
 
print("A\n", geek.arange(4, 10), "\n")
 
print("A\n", geek.arange(4, 20, 3), "\n")
登入後複製
輸出:



 [[0 1] 
 [2 3]] 


 [4 5 6 7 8 9] 

## [ 4 7 10 13 16 19]






################################################################################################################################# ####numpy.linspace(start, stop, num = 50, endpoint = True, retstep = False, dtype = None):### 在間隔中均勻回傳數字空間。類似於 arange 但不是 step 它使用樣本編號。 ###
# 说明 numpy.linspace 方法的 Python 编程
 
import numpy as geek
 
# 重新设置为 True
print("B\n", geek.linspace(2.0, 3.0, num=5, retstep=True), "\n")
 
# 长期评估 sin()
x = geek.linspace(0, 2, 10)
print("A\n", geek.sin(x))
登入後複製
######輸出:############B### (array([ 2.  ,  2.25,  2.5 ,  2.75,  3.  ]), 0.25)### ###A### [ 0.          0.22039774  0.42995636  0.6183698   0.77637192  0.6183698   0.77637192  0.8961922#71 786557   0.90929743]#########展平陣列#######我們可以用展平方法將陣列的副本折疊成一維。它接受 order 參數。預設值為“C”(用於行優先順序)。使用“F”表示列主要順序。 #########numpy.ndarray.flatten(order = 'C')### :傳回折疊成一維的陣列的副本。 ###
# 说明 numpy.flatten() 方法的 Python 程序
 
import numpy as geek
 
array = geek.array([[1, 2], [3, 4]])
 
# 使用扁平化方法
array.flatten()
print(array)
 
#使用扁平化方法
array.flatten('F')
print(array)
登入後複製
######輸出 :######

[1, 2, 3, 4] 
[1, 3, 2, 4]

在Numpy 中建立陣列的方法

##傳回給定形狀和類型的新數組,用一個填充one_like()返回與給定數組具有相同形狀和類型的數組zeros()傳回給定形狀和類型的新數組,用零填滿zeros_like()傳回與給定數組具有相同形狀和類型的零數組full_like()傳回與給定數組具有相同形狀和類型的完整數組。 array()建立一個陣列#asarray()將輸入轉換為陣列asanyarray()將輸入轉換為ndarray,但透過ndarray 子類別ascontiguousarray()傳回記憶體中的連續數組(C 順序)asmatrix()將輸入解釋為矩陣copy()傳回給定物件的陣列副本#frombuffer()將緩衝區解釋為一維數組fromfile()從文字或二進位檔案中的資料建構陣列fromfunction()#透過在在每個座標上執行函數來建構數組fromiter()#從可迭代物件建立一個新的一維數組fromstring()從字串中的文字資料初始化的新一維數組loadtxt()從文字檔案載入資料arange()在給定間隔內傳回均勻間隔的值linspace()在指定的時間間隔內傳回均勻分佈的數字logspace()傳回在對數刻度上均勻分佈的數字geomspace()傳回在對數尺度上均勻分佈的數字(幾何級數)meshgrid()從座標向量傳迴座標矩陣mgrid()nd_grid 實例,它傳回一個密集的多維「網格」##ogrid()diag()diagflat()tri()tril()#triu()vander()mat()bmat() #【相關推薦:
功能 描述
empty() 傳回給定形狀和類型的新數組,而不初始化條目
empty_like() 傳回與給定數組具有相同形狀和類型的新數組
eye() 傳回一個二維數組,其中對角線為1,其他位置為0。
identity() 傳回標識陣列
#ones()
nd_grid 實例,它傳回一個開放的多維「meshgrid」
提取對角線或建構對角線數組
建立一個二維數組,將扁平化輸入作為對角線
一個數組,在給定的對角線處和下方都有一個,在其他地方有零
陣列的下三角形
#陣列的上三角形
產生范德蒙矩陣
將輸入解釋為矩陣
從字串、巢狀序列或陣列建立矩陣物件
Python3影片教學

以上是Python NumPy教程之數組的創建詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1665
14
CakePHP 教程
1424
52
Laravel 教程
1321
25
PHP教程
1269
29
C# 教程
1249
24
PHP和Python:解釋了不同的範例 PHP和Python:解釋了不同的範例 Apr 18, 2025 am 12:26 AM

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。

在PHP和Python之間進行選擇:指南 在PHP和Python之間進行選擇:指南 Apr 18, 2025 am 12:24 AM

PHP適合網頁開發和快速原型開發,Python適用於數據科學和機器學習。 1.PHP用於動態網頁開發,語法簡單,適合快速開發。 2.Python語法簡潔,適用於多領域,庫生態系統強大。

sublime怎麼運行代碼python sublime怎麼運行代碼python Apr 16, 2025 am 08:48 AM

在 Sublime Text 中運行 Python 代碼,需先安裝 Python 插件,再創建 .py 文件並編寫代碼,最後按 Ctrl B 運行代碼,輸出會在控制台中顯示。

PHP和Python:深入了解他們的歷史 PHP和Python:深入了解他們的歷史 Apr 18, 2025 am 12:25 AM

PHP起源於1994年,由RasmusLerdorf開發,最初用於跟踪網站訪問者,逐漸演變為服務器端腳本語言,廣泛應用於網頁開發。 Python由GuidovanRossum於1980年代末開發,1991年首次發布,強調代碼可讀性和簡潔性,適用於科學計算、數據分析等領域。

Python vs. JavaScript:學習曲線和易用性 Python vs. JavaScript:學習曲線和易用性 Apr 16, 2025 am 12:12 AM

Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。

Golang vs. Python:性能和可伸縮性 Golang vs. Python:性能和可伸縮性 Apr 19, 2025 am 12:18 AM

Golang在性能和可擴展性方面優於Python。 1)Golang的編譯型特性和高效並發模型使其在高並發場景下表現出色。 2)Python作為解釋型語言,執行速度較慢,但通過工具如Cython可優化性能。

vscode在哪寫代碼 vscode在哪寫代碼 Apr 15, 2025 pm 09:54 PM

在 Visual Studio Code(VSCode)中編寫代碼簡單易行,只需安裝 VSCode、創建項目、選擇語言、創建文件、編寫代碼、保存並運行即可。 VSCode 的優點包括跨平台、免費開源、強大功能、擴展豐富,以及輕量快速。

notepad 怎麼運行python notepad 怎麼運行python Apr 16, 2025 pm 07:33 PM

在 Notepad 中運行 Python 代碼需要安裝 Python 可執行文件和 NppExec 插件。安裝 Python 並為其添加 PATH 後,在 NppExec 插件中配置命令為“python”、參數為“{CURRENT_DIRECTORY}{FILE_NAME}”,即可在 Notepad 中通過快捷鍵“F6”運行 Python 代碼。

See all articles