亚洲熟女综合色一区二区三区,亚洲精品中文字幕无码蜜桃,亚洲va欧美va日韩va成人网,亚洲av无码国产一区二区三区,亚洲精品无码久久久久久久

什么是Python面向?qū)ο??第三講

今天馬哥教育要跟大家分享的文章是了解什么是Python面向?qū)ο?/a>?也就是我們面向?qū)ο髮W(xué)習(xí)的第三節(jié)課,面向?qū)ο蟛⒉缓美斫?,是因?yàn)榇蠹伊?xí)慣了面向過程,所以在這節(jié)課中我們將面向?qū)ο蠛兔嫦蜻^程做一個(gè)對(duì)比,以便大家更好地理解。 Python入門新手和正在Python學(xué)習(xí)的小伙伴快來看一看吧,希望能夠?qū)Υ蠹矣兴鶐椭?!

在剛開始編程的時(shí)候,從上到下一行行執(zhí)行的簡(jiǎn)單程序容易被理解,即使加上if、while、for之類的語句以及函數(shù)調(diào)用,也還是不算困難。有了面向?qū)ο笾?,程序的?zhí)行路徑就變得復(fù)雜,很容易讓人混亂。不過當(dāng)你熟悉之后會(huì)發(fā)現(xiàn),面向?qū)ο笫潜让嫦蜻^程更合理的程序設(shè)計(jì)方式。

今天我用一個(gè)例子來展示兩種程序設(shè)計(jì)方式的不同。

假設(shè)我們有一輛汽車,我們知道它的速度(60km/h),以及A、B兩地的距離(100km)。要算出開著這輛車從A地到B地花費(fèi)的時(shí)間。(很像小學(xué)數(shù)學(xué)題是吧?)

面向過程的方法:

speed = 60.0

distance = 100.0

time = distance / speed

print time

面向?qū)ο蟮姆椒ǎ?/strong>

class Car:

speed = 0

def drive(self, distance):

time = distance / self.speed

print time

car = Car()

car.speed = 60.0

car.drive(100.0)

看上去似乎面向?qū)ο鬀]有比面向過程更簡(jiǎn)單,反而寫了更多行代碼。

但是,如果我們讓題目再稍稍復(fù)雜一點(diǎn)。假設(shè)我們又有了一輛更好的跑車,它的速度是150km/h,然后我們除了想從A到B,還要從B到C(距離200km)。要求分別知道這兩種車在這兩段路上需要多少時(shí)間。

面向過程的方法:

speed1 = 60.0

distance1 = 100.0

time1 = distance1 / speed1

print time1

distance2 = 200.0

time2 = distance2 / speed1

print time2

speed2 = 150.0

time3 = distance1 / speed2

print time3

time4 = distance2 / speed2

print time4

面向?qū)ο蟮姆椒ǎ?/strong>

class Car:

speed = 0

def drive(self, distance):

time = distance / self.speed

print time

car1 = Car()

car1.speed = 60.0

car1.drive(100.0)

car1.drive(200.0)

car2 = Car()

car2.speed = 150.0

car2.drive(100.0)

car2.drive(200.0)

對(duì)比兩種方法,面向過程把數(shù)據(jù)和處理數(shù)據(jù)的計(jì)算全部放在一起,當(dāng)功能復(fù)雜之后,就會(huì)顯得很混亂,且容易產(chǎn)生很多重復(fù)的代碼。而面向?qū)ο?,把一類?shù)據(jù)和處理這類數(shù)據(jù)的方法封裝在一個(gè)類中,讓程序的結(jié)構(gòu)更清晰,不同的功能之間相互獨(dú)立。這樣更有利于進(jìn)行模塊化的開發(fā)方式。

面向?qū)ο蟮乃€很深,我們這里只是粗略一瞥。它不再像之前print、while這些概念那么一目了然。但也沒必要對(duì)此畏懼,等用多了自然就熟悉了。找一些實(shí)例親手練練,會(huì)掌握得更快。

恭喜你在Python的道路上又堅(jiān)持了一天,今天我們用兩道簡(jiǎn)單的數(shù)學(xué)題,對(duì)比了面向?qū)ο蠛兔嫦蜻^程,相信大家對(duì)面向?qū)ο笥辛烁畹囊稽c(diǎn)了解,如果你還是覺得面向過程更適合一點(diǎn)、更簡(jiǎn)單一點(diǎn),那你就讓這道數(shù)學(xué)題再復(fù)雜一些試試?如果還是不太理解面向?qū)ο螅蔷头磸?fù)敲下代碼、找些案例反復(fù)練習(xí)下,你會(huì)懂得!

以上就是馬哥教育今天為大家分享的關(guān)于了解什么是Python面向?qū)ο蟮奈恼拢M酒恼履軌驅(qū)φ?Python學(xué)習(xí)?和從事Python相關(guān)工作的小伙伴們有所幫助,想要了解更多相關(guān)知識(shí)記得關(guān)注馬哥教育官網(wǎng)。最后祝愿小伙伴們工作順利!

聲明:文章來源于網(wǎng)絡(luò),如有侵權(quán)請(qǐng)聯(lián)系刪除!

相關(guān)新聞

歷經(jīng)多年發(fā)展,已成為國內(nèi)好評(píng)如潮的Linux云計(jì)算運(yùn)維、SRE、Devops、網(wǎng)絡(luò)安全、云原生、Go、Python開發(fā)專業(yè)人才培訓(xùn)機(jī)構(gòu)!