python數(shù)據(jù)結(jié)構(gòu)之面向?qū)ο?/h1>
更新時間:2022年01月25日 10:12:27 作者:柳小蔥
這篇文章主要介紹了python數(shù)據(jù)結(jié)構(gòu)之面向?qū)ο螅趐ython數(shù)據(jù)結(jié)構(gòu)的上一章節(jié)我們講述了python的輸入輸出控制異常,希望大家重點掌握輸出和控制,這些都是比較簡單的啦,多看看就好了,接下來我們要講的是python面向?qū)ο?需要的朋友可以參考一下
前文學(xué)習(xí):
python數(shù)據(jù)結(jié)構(gòu):數(shù)據(jù)類型.
python數(shù)據(jù)結(jié)構(gòu)輸入輸出及控制和異常.
今天我們來學(xué)習(xí)面向?qū)ο缶幊?,面向?qū)ο筮@種編程方式非常重要,我們以后學(xué)習(xí)到的棧、隊列、鏈表都是通過面向?qū)ο蟮姆绞綄崿F(xiàn)的。
1. 面向?qū)ο缶幊?/h2>
定義:面向?qū)ο笫前凑杖藗兛陀^世界的系統(tǒng)思維方式,采用基于對象(實體)的概念建立模型 ,模擬客觀世界分析,設(shè)計,實現(xiàn)軟件的辦法。通過面向?qū)ο蟮睦砟钍褂嬎銠C軟件系統(tǒng)能與現(xiàn)實世界中的系統(tǒng)的一一對應(yīng)。
聽到這很多同學(xué)應(yīng)該會很蒙,我解釋一下幾個關(guān)鍵詞的概念:
- 對象:一切事物都可以是對象,更準(zhǔn)確的說,對象是一個實體,用一組可識別的特征和行為來標(biāo)識,可以說對象不同的地方就是具有不同的特征與行為。
- 類:是具有相同屬性和功能的對象抽象集合
實例:就是創(chuàng)建具體對象的過程
舉一個面向?qū)ο蟮睦樱何覀冃枰煲惠v車,我們可能并不需要知道車的原理,我們只需要找到車的輪子,車的車架,車的發(fā)動機,然后將它們拼裝在一起即可。
在前面我們已經(jīng)使用了一些內(nèi)建的類來展示數(shù)據(jù)和控制結(jié)構(gòu)的例子。面向?qū)ο缶幊陶Z言最強大的一項特性是允許程序員(問題求解者) 創(chuàng)建全新的類來對求解問題所需的數(shù)據(jù)進(jìn)行建模。
我們之前使用了抽象數(shù)據(jù)類型來對數(shù)據(jù)對象的狀態(tài)及行為進(jìn)行邏輯描述。通過構(gòu)建能實現(xiàn)抽象數(shù)據(jù)類型的類,可以利用抽象過程,同時為真正在程序中運用抽象提供必要的細(xì)節(jié)。每當(dāng)需要實現(xiàn)抽象數(shù)據(jù)類型時,就可以創(chuàng)建新類。
2. 構(gòu)建類
我們來構(gòu)建一個分?jǐn)?shù)類fraction類:

你這不能用除法?其實是可以,但是除法的方式python已經(jīng)有自己的類了,我這里需要自己創(chuàng)建一個分?jǐn)?shù)類。
所有類都應(yīng)該首先提供構(gòu)造方法。構(gòu)造方法定義了數(shù)據(jù)對象的創(chuàng)建方式。要創(chuàng)建 Fraction
類的實例,必須調(diào)用構(gòu)造方法,要創(chuàng)建一個 Fraction
對象,需要提供分子和分母兩部分?jǐn)?shù)據(jù)。
class fraction: #定義一個類
def __init__(self,top,bottom):#定義構(gòu)造方法 __init__
self.num=top
self.den=bottom
這里解釋一下,self 是一個總是指向?qū)ο蟊旧淼奶厥鈪?shù),它必須是第一 個形式參數(shù)。然而,在調(diào)用方法時,從來不需要提供相應(yīng)的實際參數(shù)。如前所述,分?jǐn)?shù)需要分子與分母兩部分狀態(tài)數(shù)據(jù)。構(gòu)造方法中的 self.num
定義了 Fraction 對象有一個叫作 num 的內(nèi)部數(shù)據(jù)對象作為其狀態(tài)的一部分。同理,self.den
定義了分母。這兩個實際參數(shù)的值在初始時,賦給了狀態(tài),使得新創(chuàng)建的 Fraction
對象能夠知道其初始值。
class fraction: #定義一個類
def __init__(self,top,bottom):#定義構(gòu)造方法 __init__
self.num=top
self.den=bottom
myfraction = fraction(3,5)#使用類創(chuàng)建一個對象。
我們可以用下面這個圖來描述,我們構(gòu)造類一個類,然后通過類創(chuàng)建了一個對象。

一般情況下,我們定義了一個類,里面會有這個類的一些方法,例如,我要查看這個分?jǐn)?shù)對象的樣子,我要計算這中類型的分?jǐn)?shù),等等方法,這些都需要我們?nèi)ザx。
class fraction: #定義一個類
def __init__(self,top,bottom):#定義構(gòu)造方法 __init__
self.num=top
self.den=bottom
def show(self): #定義輸出方法
print(self.num,"/",self.den)
def add(self,otherf): #定義分?jǐn)?shù)加法
bot=otherf.den * self.den
top=self.num * otherf.den +self.den * otherf.num
print(top,"/",bot)
#定義兩個分?jǐn)?shù)
myfraction=fraction(9,16)
a=fraction(1,16)
#試試加法
myfraction.add(a)
結(jié)果如下:

這里我們放上我們寫好的分?jǐn)?shù)類定義方法。
class Fraction:
def __init__(self, top, bottom):
self.num = top
self.den = bottom
def __str__(self):
return str(self.num) + "/" + str(self.den)
def show(self):
print(self.num, "/", self.den)
def __add__(self, otherfraction): #加法 ,可以用+
newnum = self.num * otherfraction.den + self.den * otherfraction.num
newden = self.den * otherfraction.den
common = gcd(newnum, newden)
return Fraction(newnum//common, newden//common)
def __eq__(self, other): #深相等,值相等就相等
firstnum = self.num * other.den
secondnum = other.num * self.den
return firstnum == secondnum
3. 繼承
繼承是面向?qū)ο缶幊痰囊粋€重要特征:使一個類與另一個類相關(guān)聯(lián),就像人們相互聯(lián)系一樣。孩子從父母那里繼承了特征,python
的子類可以從父類那繼承數(shù)據(jù)和行為,父類也稱為超類。
就拿我們前面學(xué)習(xí)過的基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)舉例。

列表、字符串和元組都是有序集合。它們都繼承了共同的數(shù)據(jù)組織和操作。不過,根據(jù)數(shù)據(jù)是否同類以及集合是否可修改,它們彼此又有區(qū)別。子類從父類繼承共同的特征,但是通過額外的特征彼此區(qū)分。
3.1 繼承案例
我們這里通過一個小的案例來實現(xiàn)繼承的案例,我們來構(gòu)建一個模擬程序,用于模擬數(shù)字電路。邏輯門是這個模擬程序的基本構(gòu)造單元,它們代表其輸入和輸出之間的布爾代數(shù)關(guān)系。

通過不同的模式將這些邏輯門組合起來并提供一系列輸入值,可以構(gòu)建具有邏輯功能的電 路。圖 1-10 展示了一個包含兩個與門、一個或門和一個非門的電路。兩個與門的輸出直接作為 輸入傳給或門,然后其輸出又輸入給非門。如果在 4 個輸入處(每個與門有兩個輸入)提供一系列值,那么非門就會輸出結(jié)果。

為了實現(xiàn)電路,首先需要構(gòu)建邏輯門的表示??梢暂p松地將邏輯門組織成類的繼承層次結(jié)構(gòu), 如圖所示。頂部的 LogicGate
類代表邏輯門的通用特性:邏輯門的標(biāo)簽和一個輸出。下面 一層子類將邏輯門分成兩種:有一個輸入的邏輯門和有兩個輸入的邏輯門。再往下,就是具體的邏輯門。

首先定義父類LogicGate
class LogicGate:
def __init__(self, n):#構(gòu)造函數(shù),label代表的是自己的名字
self.label = n
self.output = None
def getLabel(self):#輸出名字的函數(shù)
return self.label
def getOutput(self):#輸出的結(jié)果
self.output = self.performGateLogic()
return self.output
目前還不用實現(xiàn) performGateLogic
函數(shù)。原因在于,我們不知道每一種邏輯門將如何進(jìn) 行自己的邏輯運算。這些細(xì)節(jié)會交由繼承層次結(jié)構(gòu)中的每一個邏輯門來實現(xiàn)。這是一種在面向?qū)ο缶幊讨蟹浅姶蟮乃枷?mdash;—我們創(chuàng)建了一個方法,而其代碼還不存在。參數(shù) self 是指向?qū)嶋H調(diào)用方法的邏輯門對象的引用。任何添加到繼承層次結(jié)構(gòu)中的新邏輯門都僅需要實現(xiàn)之后會被調(diào)用的 performGateLogic
函數(shù)。一旦實現(xiàn)完成,邏輯門就可以提供運算結(jié)果。擴(kuò)展已有的繼承層次結(jié)構(gòu)并提供使用新類所需的特定函數(shù),這種能力對于重用代碼來說非常重要。
定義子類BinaryGate類、UnaryGate類
兩個類中的構(gòu)造方法首先使用 super
函數(shù) 來調(diào)用其父類的構(gòu)造方法。當(dāng)創(chuàng)建 BinaryGate
類的實例時,首先要初始化所有從LogicGate
中繼承來的數(shù)據(jù)項,在這里就是邏輯門的標(biāo)簽。接著,構(gòu)造方法添加兩個輸入(pinA 和 pinB)。 這是在構(gòu)建類繼承層次結(jié)構(gòu)時常用的模式。子類的構(gòu)造方法需要先調(diào)用父類的構(gòu)造方法,然后再 初始化自己獨有的數(shù)據(jù)。
BinaryGate類主要是與門和或門(有兩個輸入)
class BinaryGate(LogicGate):
def __init__(self, n):
super().__init__(n)#繼承父類的構(gòu)造方法
self.pinA = None #添加自己的參數(shù)
self.pinB = None
def getPinA(self):#自己的方法
return int(input("Enter Pin A input for gate "+self.getLabel() + "-->"))
def getPinB(self):#自己的方法
return int(input("Enter Pin B input for gate "+self.getLabel() + "-->"))
UnaryGate類主要是非門(只有一個輸入)。
class UnaryGate(LogicGate):
def __init__(self, n):
super().__init__(n)#繼承父類的構(gòu)造方法
self.pin = None#添加自己的參數(shù)
def getPin(self):#自己的方法
return int(input("Enter Pin input for gate " + self.getLabel() + "-->"))
構(gòu)造孫類(與門、或門、非門)
與門 AndGate類
#構(gòu)造與門
class AndGate(BinaryGate):
def __init__(self, n):
super().__init__(n)#繼承父類方法
def performGateLogic(self):#自己的運算邏輯
a = self.getPinA()
b = self.getPinB()
if a==1 and b==1:
return 1
else:
return 0
或門 OrGate
class OrGate(BinaryGate):
def __init__(self, n):
super().__init__(n)#繼承父類方法
def performGateLogic(self):
a = self.getPinA()
b = self.getPinB()
if a==1 or b==1:
return 1
else:
return 0
非門 NotGate
class NotGate(UnaryGate):
def __init__(self, n):
super().__init__(n)
def performGateLogic(self):
a = self.getPin()
if a==1:
return 0
else:
return 1
測試一下結(jié)果:
與門

或門

非門

參考資料:
- 《python數(shù)據(jù)結(jié)構(gòu)與算法》
- 《大話數(shù)據(jù)結(jié)構(gòu)》
到此這篇關(guān)于python數(shù)據(jù)結(jié)構(gòu)之面向?qū)ο蟮奈恼戮徒榻B到這了,更多相關(guān)python面向?qū)ο髢?nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
-
matplotlib繪制兩點間連線的幾種方法實現(xiàn)
本文主要介紹了matplotlib繪制兩點間連線的幾種方法實現(xiàn),主要介紹了4種方法,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下 2022-03-03
-
解決pandas展示數(shù)據(jù)輸出時列名不能對齊的問題
今天小編就為大家分享一篇解決pandas展示數(shù)據(jù)輸出時列名不能對齊的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧 2019-11-11
-
pytorch中函數(shù)tensor.numpy()的數(shù)據(jù)類型解析
這篇文章主要介紹了pytorch中函數(shù)tensor.numpy()的數(shù)據(jù)類型,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教 2022-07-07
最新評論
前文學(xué)習(xí):
python數(shù)據(jù)結(jié)構(gòu):數(shù)據(jù)類型.
python數(shù)據(jù)結(jié)構(gòu)輸入輸出及控制和異常.
今天我們來學(xué)習(xí)面向?qū)ο缶幊?,面向?qū)ο筮@種編程方式非常重要,我們以后學(xué)習(xí)到的棧、隊列、鏈表都是通過面向?qū)ο蟮姆绞綄崿F(xiàn)的。
1. 面向?qū)ο缶幊?/h2>
定義:面向?qū)ο笫前凑杖藗兛陀^世界的系統(tǒng)思維方式,采用基于對象(實體)的概念建立模型 ,模擬客觀世界分析,設(shè)計,實現(xiàn)軟件的辦法。通過面向?qū)ο蟮睦砟钍褂嬎銠C軟件系統(tǒng)能與現(xiàn)實世界中的系統(tǒng)的一一對應(yīng)。
定義:面向?qū)ο笫前凑杖藗兛陀^世界的系統(tǒng)思維方式,采用基于對象(實體)的概念建立模型 ,模擬客觀世界分析,設(shè)計,實現(xiàn)軟件的辦法。通過面向?qū)ο蟮睦砟钍褂嬎銠C軟件系統(tǒng)能與現(xiàn)實世界中的系統(tǒng)的一一對應(yīng)。
聽到這很多同學(xué)應(yīng)該會很蒙,我解釋一下幾個關(guān)鍵詞的概念:
- 對象:一切事物都可以是對象,更準(zhǔn)確的說,對象是一個實體,用一組可識別的特征和行為來標(biāo)識,可以說對象不同的地方就是具有不同的特征與行為。
- 類:是具有相同屬性和功能的對象抽象集合
實例:就是創(chuàng)建具體對象的過程
舉一個面向?qū)ο蟮睦樱何覀冃枰煲惠v車,我們可能并不需要知道車的原理,我們只需要找到車的輪子,車的車架,車的發(fā)動機,然后將它們拼裝在一起即可。
在前面我們已經(jīng)使用了一些內(nèi)建的類來展示數(shù)據(jù)和控制結(jié)構(gòu)的例子。面向?qū)ο缶幊陶Z言最強大的一項特性是允許程序員(問題求解者) 創(chuàng)建全新的類來對求解問題所需的數(shù)據(jù)進(jìn)行建模。
我們之前使用了抽象數(shù)據(jù)類型來對數(shù)據(jù)對象的狀態(tài)及行為進(jìn)行邏輯描述。通過構(gòu)建能實現(xiàn)抽象數(shù)據(jù)類型的類,可以利用抽象過程,同時為真正在程序中運用抽象提供必要的細(xì)節(jié)。每當(dāng)需要實現(xiàn)抽象數(shù)據(jù)類型時,就可以創(chuàng)建新類。
2. 構(gòu)建類
我們來構(gòu)建一個分?jǐn)?shù)類fraction類:
你這不能用除法?其實是可以,但是除法的方式python已經(jīng)有自己的類了,我這里需要自己創(chuàng)建一個分?jǐn)?shù)類。
所有類都應(yīng)該首先提供構(gòu)造方法。構(gòu)造方法定義了數(shù)據(jù)對象的創(chuàng)建方式。要創(chuàng)建 Fraction
類的實例,必須調(diào)用構(gòu)造方法,要創(chuàng)建一個 Fraction
對象,需要提供分子和分母兩部分?jǐn)?shù)據(jù)。
class fraction: #定義一個類 def __init__(self,top,bottom):#定義構(gòu)造方法 __init__ self.num=top self.den=bottom
這里解釋一下,self 是一個總是指向?qū)ο蟊旧淼奶厥鈪?shù),它必須是第一 個形式參數(shù)。然而,在調(diào)用方法時,從來不需要提供相應(yīng)的實際參數(shù)。如前所述,分?jǐn)?shù)需要分子與分母兩部分狀態(tài)數(shù)據(jù)。構(gòu)造方法中的 self.num
定義了 Fraction 對象有一個叫作 num 的內(nèi)部數(shù)據(jù)對象作為其狀態(tài)的一部分。同理,self.den
定義了分母。這兩個實際參數(shù)的值在初始時,賦給了狀態(tài),使得新創(chuàng)建的 Fraction
對象能夠知道其初始值。
class fraction: #定義一個類 def __init__(self,top,bottom):#定義構(gòu)造方法 __init__ self.num=top self.den=bottom myfraction = fraction(3,5)#使用類創(chuàng)建一個對象。
我們可以用下面這個圖來描述,我們構(gòu)造類一個類,然后通過類創(chuàng)建了一個對象。
一般情況下,我們定義了一個類,里面會有這個類的一些方法,例如,我要查看這個分?jǐn)?shù)對象的樣子,我要計算這中類型的分?jǐn)?shù),等等方法,這些都需要我們?nèi)ザx。
class fraction: #定義一個類 def __init__(self,top,bottom):#定義構(gòu)造方法 __init__ self.num=top self.den=bottom def show(self): #定義輸出方法 print(self.num,"/",self.den) def add(self,otherf): #定義分?jǐn)?shù)加法 bot=otherf.den * self.den top=self.num * otherf.den +self.den * otherf.num print(top,"/",bot) #定義兩個分?jǐn)?shù) myfraction=fraction(9,16) a=fraction(1,16) #試試加法 myfraction.add(a)
結(jié)果如下:
這里我們放上我們寫好的分?jǐn)?shù)類定義方法。
class Fraction: def __init__(self, top, bottom): self.num = top self.den = bottom def __str__(self): return str(self.num) + "/" + str(self.den) def show(self): print(self.num, "/", self.den) def __add__(self, otherfraction): #加法 ,可以用+ newnum = self.num * otherfraction.den + self.den * otherfraction.num newden = self.den * otherfraction.den common = gcd(newnum, newden) return Fraction(newnum//common, newden//common) def __eq__(self, other): #深相等,值相等就相等 firstnum = self.num * other.den secondnum = other.num * self.den return firstnum == secondnum
3. 繼承
繼承是面向?qū)ο缶幊痰囊粋€重要特征:使一個類與另一個類相關(guān)聯(lián),就像人們相互聯(lián)系一樣。孩子從父母那里繼承了特征,python
的子類可以從父類那繼承數(shù)據(jù)和行為,父類也稱為超類。
就拿我們前面學(xué)習(xí)過的基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)舉例。
列表、字符串和元組都是有序集合。它們都繼承了共同的數(shù)據(jù)組織和操作。不過,根據(jù)數(shù)據(jù)是否同類以及集合是否可修改,它們彼此又有區(qū)別。子類從父類繼承共同的特征,但是通過額外的特征彼此區(qū)分。
3.1 繼承案例
我們這里通過一個小的案例來實現(xiàn)繼承的案例,我們來構(gòu)建一個模擬程序,用于模擬數(shù)字電路。邏輯門是這個模擬程序的基本構(gòu)造單元,它們代表其輸入和輸出之間的布爾代數(shù)關(guān)系。
通過不同的模式將這些邏輯門組合起來并提供一系列輸入值,可以構(gòu)建具有邏輯功能的電 路。圖 1-10 展示了一個包含兩個與門、一個或門和一個非門的電路。兩個與門的輸出直接作為 輸入傳給或門,然后其輸出又輸入給非門。如果在 4 個輸入處(每個與門有兩個輸入)提供一系列值,那么非門就會輸出結(jié)果。
為了實現(xiàn)電路,首先需要構(gòu)建邏輯門的表示??梢暂p松地將邏輯門組織成類的繼承層次結(jié)構(gòu), 如圖所示。頂部的 LogicGate
類代表邏輯門的通用特性:邏輯門的標(biāo)簽和一個輸出。下面 一層子類將邏輯門分成兩種:有一個輸入的邏輯門和有兩個輸入的邏輯門。再往下,就是具體的邏輯門。
首先定義父類LogicGate
class LogicGate: def __init__(self, n):#構(gòu)造函數(shù),label代表的是自己的名字 self.label = n self.output = None def getLabel(self):#輸出名字的函數(shù) return self.label def getOutput(self):#輸出的結(jié)果 self.output = self.performGateLogic() return self.output
目前還不用實現(xiàn) performGateLogic
函數(shù)。原因在于,我們不知道每一種邏輯門將如何進(jìn) 行自己的邏輯運算。這些細(xì)節(jié)會交由繼承層次結(jié)構(gòu)中的每一個邏輯門來實現(xiàn)。這是一種在面向?qū)ο缶幊讨蟹浅姶蟮乃枷?mdash;—我們創(chuàng)建了一個方法,而其代碼還不存在。參數(shù) self 是指向?qū)嶋H調(diào)用方法的邏輯門對象的引用。任何添加到繼承層次結(jié)構(gòu)中的新邏輯門都僅需要實現(xiàn)之后會被調(diào)用的 performGateLogic
函數(shù)。一旦實現(xiàn)完成,邏輯門就可以提供運算結(jié)果。擴(kuò)展已有的繼承層次結(jié)構(gòu)并提供使用新類所需的特定函數(shù),這種能力對于重用代碼來說非常重要。
定義子類BinaryGate類、UnaryGate類
兩個類中的構(gòu)造方法首先使用 super
函數(shù) 來調(diào)用其父類的構(gòu)造方法。當(dāng)創(chuàng)建 BinaryGate
類的實例時,首先要初始化所有從LogicGate
中繼承來的數(shù)據(jù)項,在這里就是邏輯門的標(biāo)簽。接著,構(gòu)造方法添加兩個輸入(pinA 和 pinB)。 這是在構(gòu)建類繼承層次結(jié)構(gòu)時常用的模式。子類的構(gòu)造方法需要先調(diào)用父類的構(gòu)造方法,然后再 初始化自己獨有的數(shù)據(jù)。
BinaryGate類主要是與門和或門(有兩個輸入)
class BinaryGate(LogicGate): def __init__(self, n): super().__init__(n)#繼承父類的構(gòu)造方法 self.pinA = None #添加自己的參數(shù) self.pinB = None def getPinA(self):#自己的方法 return int(input("Enter Pin A input for gate "+self.getLabel() + "-->")) def getPinB(self):#自己的方法 return int(input("Enter Pin B input for gate "+self.getLabel() + "-->"))
UnaryGate類主要是非門(只有一個輸入)。
class UnaryGate(LogicGate): def __init__(self, n): super().__init__(n)#繼承父類的構(gòu)造方法 self.pin = None#添加自己的參數(shù) def getPin(self):#自己的方法 return int(input("Enter Pin input for gate " + self.getLabel() + "-->"))
構(gòu)造孫類(與門、或門、非門)
與門 AndGate類
#構(gòu)造與門 class AndGate(BinaryGate): def __init__(self, n): super().__init__(n)#繼承父類方法 def performGateLogic(self):#自己的運算邏輯 a = self.getPinA() b = self.getPinB() if a==1 and b==1: return 1 else: return 0
或門 OrGate
class OrGate(BinaryGate): def __init__(self, n): super().__init__(n)#繼承父類方法 def performGateLogic(self): a = self.getPinA() b = self.getPinB() if a==1 or b==1: return 1 else: return 0
非門 NotGate
class NotGate(UnaryGate): def __init__(self, n): super().__init__(n) def performGateLogic(self): a = self.getPin() if a==1: return 0 else: return 1
測試一下結(jié)果:
與門
或門
非門
參考資料:
- 《python數(shù)據(jù)結(jié)構(gòu)與算法》
- 《大話數(shù)據(jù)結(jié)構(gòu)》
到此這篇關(guān)于python數(shù)據(jù)結(jié)構(gòu)之面向?qū)ο蟮奈恼戮徒榻B到這了,更多相關(guān)python面向?qū)ο髢?nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
matplotlib繪制兩點間連線的幾種方法實現(xiàn)
本文主要介紹了matplotlib繪制兩點間連線的幾種方法實現(xiàn),主要介紹了4種方法,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-03-03解決pandas展示數(shù)據(jù)輸出時列名不能對齊的問題
今天小編就為大家分享一篇解決pandas展示數(shù)據(jù)輸出時列名不能對齊的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-11-11pytorch中函數(shù)tensor.numpy()的數(shù)據(jù)類型解析
這篇文章主要介紹了pytorch中函數(shù)tensor.numpy()的數(shù)據(jù)類型,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07