搜尋
首頁後端開發Python教學Python NumPy教程之數組的創建詳解

【相關推薦: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刪除
Python:遊戲,Guis等Python:遊戲,Guis等Apr 13, 2025 am 12:14 AM

Python在遊戲和GUI開發中表現出色。 1)遊戲開發使用Pygame,提供繪圖、音頻等功能,適合創建2D遊戲。 2)GUI開發可選擇Tkinter或PyQt,Tkinter簡單易用,PyQt功能豐富,適合專業開發。

Python vs.C:申請和用例Python vs.C:申請和用例Apr 12, 2025 am 12:01 AM

Python适合数据科学、Web开发和自动化任务,而C 适用于系统编程、游戏开发和嵌入式系统。Python以简洁和强大的生态系统著称,C 则以高性能和底层控制能力闻名。

2小時的Python計劃:一種現實的方法2小時的Python計劃:一種現實的方法Apr 11, 2025 am 12:04 AM

2小時內可以學會Python的基本編程概念和技能。 1.學習變量和數據類型,2.掌握控制流(條件語句和循環),3.理解函數的定義和使用,4.通過簡單示例和代碼片段快速上手Python編程。

Python:探索其主要應用程序Python:探索其主要應用程序Apr 10, 2025 am 09:41 AM

Python在web開發、數據科學、機器學習、自動化和腳本編寫等領域有廣泛應用。 1)在web開發中,Django和Flask框架簡化了開發過程。 2)數據科學和機器學習領域,NumPy、Pandas、Scikit-learn和TensorFlow庫提供了強大支持。 3)自動化和腳本編寫方面,Python適用於自動化測試和系統管理等任務。

您可以在2小時內學到多少python?您可以在2小時內學到多少python?Apr 09, 2025 pm 04:33 PM

兩小時內可以學到Python的基礎知識。 1.學習變量和數據類型,2.掌握控制結構如if語句和循環,3.了解函數的定義和使用。這些將幫助你開始編寫簡單的Python程序。

如何在10小時內通過項目和問題驅動的方式教計算機小白編程基礎?如何在10小時內通過項目和問題驅動的方式教計算機小白編程基礎?Apr 02, 2025 am 07:18 AM

如何在10小時內教計算機小白編程基礎?如果你只有10個小時來教計算機小白一些編程知識,你會選擇教些什麼�...

如何在使用 Fiddler Everywhere 進行中間人讀取時避免被瀏覽器檢測到?如何在使用 Fiddler Everywhere 進行中間人讀取時避免被瀏覽器檢測到?Apr 02, 2025 am 07:15 AM

使用FiddlerEverywhere進行中間人讀取時如何避免被檢測到當你使用FiddlerEverywhere...

Python 3.6加載Pickle文件報錯"__builtin__"模塊未找到怎麼辦?Python 3.6加載Pickle文件報錯"__builtin__"模塊未找到怎麼辦?Apr 02, 2025 am 07:12 AM

Python3.6環境下加載Pickle文件報錯:ModuleNotFoundError:Nomodulenamed...

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具