Python初學(十五)

這章說說變量的作用域和代碼的復用

變量的作用域

根據(jù)程序中變量所在的位置和作用范圍,變量分為局部變量和全局變量。

局部變量僅在函數(shù)內(nèi)部,且作用域也在函數(shù)內(nèi)部,全局變量的作用域是從程序開始到程序結(jié)束。

局部變量:

局部變量指在函數(shù)內(nèi)部使用的變量,僅在函數(shù)內(nèi)部有效,當函數(shù)退出時變量將不在存在。

變量z是函數(shù)multiply()內(nèi)部使用的變量,當函數(shù)調(diào)用后,變量z將不存在

全局變量:

全局變量指在函數(shù)之外定義的變量,在程序執(zhí)行全過程有效。全局變量在函數(shù)內(nèi)部使用時,需要提前使用保留字global聲明,語法形式如下:

? ? ? ? ? ? ? ? ? ? ? ? global<全局變量>

變量n為全局變量,在函數(shù)multiply()中使用時需要在函數(shù)內(nèi)部使用global聲明,定義后即可使用

如果未使用保留字global申明,即使名稱相同,也不是全局變量。

我是就感覺這點不好,還要用個保留字來聲明

代碼復用:

函數(shù)是程序的一種基本抽象方式,它將一系列代碼組織起來通過命名供其他程序使用。

函數(shù)封裝的直接好處是代碼復用,任何其他代碼只要輸入?yún)?shù)即可調(diào)用函數(shù),從而避免相同功能代碼在被調(diào)用處重復編寫。代碼復用產(chǎn)生了另一個好處,當更新函數(shù)功能時,所有被調(diào)用處的功能都被更新。

模塊化設計指通過函數(shù)的封裝功能將程序劃分成主程序、子程序和子程序間關(guān)系的表達。模塊化設計是使用函數(shù)設計程序的思考方法,以功能塊為基本單位,一般有兩個基本要求:

????緊耦合:盡可能合理劃分功能塊,功能塊內(nèi)部耦合緊密;
????松耦合:模塊間關(guān)系盡可能簡單,功能塊之間耦合度低。

耦合性指程序結(jié)構(gòu)中各模塊之間相互關(guān)聯(lián)的成都,它取決于各模塊間接口的復雜程度和調(diào)用方式。

緊耦合指模塊或系統(tǒng)間關(guān)系緊密,存在較多或復雜的相互調(diào)用。緊耦合的缺點在于更新一個模塊可能導致其他模塊變化,復用較困難。

松耦合一般基于消息或協(xié)議實現(xiàn),系統(tǒng)間交互簡單。使用函數(shù)只是模塊化設計的必要非充分條件,根據(jù)計算需求合理劃分函數(shù)十分重要。一般來說,完成特定功能或被經(jīng)常復用的一組語句應該采用函數(shù)來封裝,并盡可能減少函數(shù)間參數(shù)和返回值的數(shù)量。

以上就是本文的內(nèi)容了。函數(shù)和代碼復用到這里基本就算是完了,下章就要講解別的內(nèi)容了,如果有不明白的可以在下面評論。

Python 學習的基礎(chǔ)(持續(xù)更新中......)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴謹 對...
    cosWriter閱讀 11,681評論 1 32
  • 一、溫故而知新 1. 內(nèi)存不夠怎么辦 內(nèi)存簡單分配策略的問題地址空間不隔離內(nèi)存使用效率低程序運行的地址不確定 關(guān)于...
    SeanCST閱讀 8,141評論 0 27
  • 本文來自英國心理學學會研究文摘(BPS Research Digest) 美味的食物,溫暖的房間,不錯的工作,一切...
    凌易水閱讀 859評論 0 1
  • 莽莽撞撞,跋涉在古人腔調(diào)里 一塊塊絆腳的石塊,吟唱出韻律之美 一座方城,便是一個獨特的存在 城東的小伙苦等了一晚,...
    東溪散人閱讀 323評論 0 6
  • 今天我終于渡過了兼職的實習期,成為正式的在職員工(以后我也是有工資的人了) 今天周五休息不被四級了,而且今天晚上吃...
    曹浩洋閱讀 509評論 0 0

友情鏈接更多精彩內(nèi)容