python 调用另一个py_跟我自学python 第9章 类(9.4.6 在一个模块中导入另一个模块)...
大家好今天學(xué)習(xí)9.4.6 在一個(gè)模塊中導(dǎo)入另一個(gè)模塊 。今天我們繼續(xù)學(xué)習(xí)python。馬上類(lèi)就學(xué)完了。
喜歡python就關(guān)注冠山巡山使。 我將跟大家一塊自學(xué)完python語(yǔ)言。
9.4.6 在一個(gè)模塊中導(dǎo)入另一個(gè)模塊
有時(shí)候,需要將類(lèi)分散到多個(gè)模塊中,以免模塊太大,或在同一個(gè)模塊中存儲(chǔ)不相關(guān)的類(lèi)。
將類(lèi)存儲(chǔ)在多個(gè)模塊中時(shí),你可能會(huì)發(fā)現(xiàn)一個(gè)模塊中的類(lèi)依賴(lài)于另一個(gè)模塊中的類(lèi)。在這種情況
下,可在前一個(gè)模塊中導(dǎo)入必要的類(lèi)。
例如,下面將Car類(lèi)存儲(chǔ)在一個(gè)模塊中,并將ElectricCar和Battery類(lèi)存儲(chǔ)在另一個(gè)模塊中。
我們將第二個(gè)模塊命名為electric_car.py(這將覆蓋前面創(chuàng)建的文件electric_car.py),并將Battery和ElectricCar類(lèi)復(fù)制到這個(gè)模塊中:
electric_car.py
代碼1(類(lèi)代碼)
代碼多折疊了代碼
ElectricCar類(lèi)需要訪(fǎng)問(wèn)其父類(lèi)Car,因此在?處,我們直接將Car類(lèi)導(dǎo)入該模塊中。如果我們
忘記了這行代碼, Python將在我們?cè)噲D創(chuàng)建ElectricCar實(shí)例時(shí)引發(fā)錯(cuò)誤。我們還需要更新模塊
car,使其包含Car類(lèi):
car.py
代碼2(代碼類(lèi))
代碼多我折疊了代碼了
現(xiàn)在可以分別從每個(gè)模塊中導(dǎo)入類(lèi),以根據(jù)需要?jiǎng)?chuàng)建任何類(lèi)型的汽車(chē)了:
my_cars.py
代碼3(代碼測(cè)試正常)
在新代碼1處,我們從模塊car中導(dǎo)入了Car類(lèi),并從模塊electric_car中導(dǎo)入ElectricCar類(lèi)。接下
來(lái),我們創(chuàng)建了一輛普通汽車(chē)和一輛電動(dòng)汽車(chē)。這兩種汽車(chē)都得以正確地創(chuàng)建:
9.4.7 自定義工作流程
正如你看到的,在組織大型項(xiàng)目的代碼方面, Python提供了很多選項(xiàng)。熟悉所有這些選項(xiàng)很
重要,這樣你才能確定哪種項(xiàng)目組織方式是最佳的,并能理解別人開(kāi)發(fā)的項(xiàng)目。
一開(kāi)始應(yīng)讓代碼結(jié)構(gòu)盡可能簡(jiǎn)單。先盡可能在一個(gè)文件中完成所有的工作,確定一切都能正
確運(yùn)行后,再將類(lèi)移到獨(dú)立的模塊中。如果你喜歡模塊和文件的交互方式,可在項(xiàng)目開(kāi)始時(shí)就嘗
試將類(lèi)存儲(chǔ)到模塊中。先找出讓你能夠編寫(xiě)出可行代碼的方式,再?lài)L試讓代碼更為組織有序。
因?yàn)楹竺娲a篇幅比較大。大家看起來(lái)也不便。所以自學(xué)教程我會(huì)分割的比較多些。類(lèi)還有幾小節(jié)就學(xué)完了。
今天我們終于把類(lèi)學(xué)完了。明天學(xué)習(xí) Python 標(biāo)準(zhǔn)庫(kù)
如果喜歡可以 點(diǎn)贊+關(guān)注冠山巡山使 or 評(píng)論+轉(zhuǎn)發(fā)此文章讓其他喜歡Python的同學(xué)看到吆 。明天見(jiàn)!
關(guān)注冠山巡山使+私信:“編輯器”三個(gè)字 就可以有這個(gè)編輯器的下載地址了。關(guān)注冠山巡山使+私信:“自學(xué)python”可以下載此教程!(我是參考此教程做的自學(xué)課程。大多數(shù)人兒只是下載下來(lái)。看完的很少。希望能跟我一塊自學(xué)完!)總結(jié)
以上是生活随笔為你收集整理的python 调用另一个py_跟我自学python 第9章 类(9.4.6 在一个模块中导入另一个模块)...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: gets函数会读取回车吗_会做二次函数吗
- 下一篇: python leetcode_pyth