亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python中np.zeros_like函數(shù)用法詳解

 更新時(shí)間:2025年04月15日 11:22:12   作者:瘋狂成癮者  
這篇文章主要介紹了python中np.zeros_like函數(shù)用法的相關(guān)資料,np.zeros_like是?NumPy?庫(kù)中的一個(gè)函數(shù),用于創(chuàng)建一個(gè)與給定數(shù)組形狀和類型相同的新數(shù)組,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下

前言

np.zeros_like 是 NumPy 庫(kù)中的一個(gè)函數(shù),用于創(chuàng)建一個(gè)與給定數(shù)組具有相同形狀和類型的數(shù)組,并將所有元素初始化為 0。

語(yǔ)法:

np.zeros_like(a, dtype=None, order='K', subok=True)

參數(shù):

  • a:輸入的數(shù)組。新的數(shù)組將具有與 a 相同的形狀和類型。
  • dtype(可選):指定返回?cái)?shù)組的數(shù)據(jù)類型。如果沒(méi)有指定,默認(rèn)為輸入數(shù)組 a 的數(shù)據(jù)類型。
  • order(可選):指定返回?cái)?shù)組的內(nèi)存布局,'C' 為行主序(C-style),'F' 為列主序(Fortran-style)。默認(rèn)為 'K',意味著返回?cái)?shù)組的內(nèi)存布局盡量與輸入數(shù)組一致。
  • subok(可選):如果為 True,返回的數(shù)組將保持子類的類型。如果為 False,則返回的數(shù)組是 ndarray 類型。默認(rèn)值為 True

返回值:

返回一個(gè)具有與輸入數(shù)組相同形狀和類型的新數(shù)組,且數(shù)組的所有元素都初始化為 0。

使用示例:

1. 創(chuàng)建與現(xiàn)有數(shù)組相同形狀的零數(shù)組

import numpy as np

# 創(chuàng)建一個(gè)原始數(shù)組
arr = np.array([[1, 2, 3], [4, 5, 6]])

# 使用 np.zeros_like 創(chuàng)建一個(gè)與 arr 形狀相同的零數(shù)組
arr_zeros = np.zeros_like(arr)

print(arr_zeros)
# 輸出:
# [[0 0 0]
#  [0 0 0]]

在這個(gè)例子中,arr_zeros 是一個(gè)與 arr 形狀相同的數(shù)組,且所有元素都初始化為 0。

2. 指定數(shù)據(jù)類型 dtype

你可以指定新數(shù)組的數(shù)據(jù)類型,而不必依賴輸入數(shù)組的類型。例如,如果你希望返回一個(gè)浮點(diǎn)類型的數(shù)組:

arr_zeros_float = np.zeros_like(arr, dtype=float)

print(arr_zeros_float)
# 輸出:
# [[0. 0. 0.]
#  [0. 0. 0.]]

這里,返回的數(shù)組類型是 float,即使原數(shù)組 arr 的元素是整數(shù)類型。

3. 與 np.zeros() 的比較

np.zeros_like() 與 np.zeros() 相似,但是 np.zeros_like() 會(huì)根據(jù)現(xiàn)有數(shù)組的形狀和類型創(chuàng)建零數(shù)組,而 np.zeros() 需要顯式指定形狀。

# 使用 np.zeros 創(chuàng)建一個(gè) 2x3 的零數(shù)組
arr_zeros_manual = np.zeros((2, 3))

# 使用 np.zeros_like 根據(jù) arr 創(chuàng)建一個(gè)零數(shù)組
arr_zeros_like = np.zeros_like(arr)

print(np.array_equal(arr_zeros_manual, arr_zeros_like))  # 輸出: True

兩者都創(chuàng)建了形狀為 (2, 3) 的零數(shù)組,但 np.zeros_like() 根據(jù)現(xiàn)有數(shù)組 arr 的形狀和類型自動(dòng)生成零數(shù)組。

4. 指定內(nèi)存布局

通過(guò) order 參數(shù),你可以指定返回?cái)?shù)組的內(nèi)存布局。默認(rèn)情況下,np.zeros_like() 會(huì)使用 'K',即盡量與輸入數(shù)組一致,但你也可以指定為 'C' 或 'F'

arr_zeros_c = np.zeros_like(arr, order='C')  # 使用行主序
arr_zeros_f = np.zeros_like(arr, order='F')  # 使用列主序

print(arr_zeros_c.flags['C_CONTIGUOUS'])  # 輸出: True,表示是 C-style 存儲(chǔ)
print(arr_zeros_f.flags['F_CONTIGUOUS'])  # 輸出: True,表示是 Fortran-style 存儲(chǔ)

5. 與 np.zeros() 的區(qū)別

np.zeros() 用于根據(jù)給定形狀創(chuàng)建零數(shù)組,而 np.zeros_like() 用于創(chuàng)建一個(gè)形狀和數(shù)據(jù)類型與現(xiàn)有數(shù)組相同的零數(shù)組。np.zeros_like() 比 np.zeros() 更加靈活,因?yàn)樗軌蚶^承現(xiàn)有數(shù)組的形狀和類型,而不需要你重新指定。

總結(jié):

  • np.zeros_like(a):創(chuàng)建一個(gè)與 a 形狀和數(shù)據(jù)類型相同的零數(shù)組。
  • 可選參數(shù) dtype 可以指定返回?cái)?shù)組的數(shù)據(jù)類型。
  • order 控制返回?cái)?shù)組的內(nèi)存布局(默認(rèn)為 K)。
  • 它通常用于在現(xiàn)有數(shù)組的基礎(chǔ)上創(chuàng)建零數(shù)組,特別是在需要保證形狀和類型一致時(shí)。

這種方法非常適合在進(jìn)行數(shù)組計(jì)算時(shí)初始化一個(gè)與其他數(shù)組具有相同形狀的零數(shù)組。

到此這篇關(guān)于python中np.zeros_like函數(shù)用法詳解的文章就介紹到這了,更多相關(guān)python np.zeros_like函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論