1、變量優化
1.、什麼是變量?spa
變:變化對象
量:表示的是狀態內存
變量是一種能夠反映出狀態變化的一種機制。字符串
二、爲何要有變量?內存管理
程序的執行本質就是一系列狀態的變化。效率
三、如何定義變量?(使用)變量
變量名垃圾回收
賦值符號語法
變量值
變量名是對值的引用
name = ' Nick '
3.一、變量名的命名規範:
一、只能是字母,數字,下劃線的任意組合
二、不能以中文,數字開頭
三、不能以關鍵字命名
3.二、變量名的命名風格:
一、駝峯體 : UserAge = 18
二、下劃線體 : user_age = 18
3.三、變量的三大特性:
值 :value print()
內存地址 : id print( id( ) )
變量類型 : type print( type( ) )
is 身份運算 : 比較的是 id
== : 比較的是 值
2、常量
1.、什麼是常量?
程序運行過程當中不會改變的量。但其實在語法上,壓根沒有常量,知識你們約定俗成,把變量名所有大寫就定義爲常量。
NAME = ' Nick'
二、爲何要有常量?
有些值是固定的,不但願被改變,好比圓周率,3.1415926...
3、內存管理
一、小整數池:Python爲了優化速度,使用了小整數對象池,避免爲整數頻繁申請和銷燬內存空間。
小整數池目的:節省內存,提升執行效率
Python對小整數的定義是[-5,256]這些整數對象是提早創建好的,不會被垃圾回收。在一個Python的程序中,全部位於這個範圍內的整數使用的都是同一個對象。
同理,單個字母也是這樣的。
可是當定義2個相同的字符串時,引用計數爲0,觸發垃圾回收
另外建立變量的值若是相同的話,建立的時間間隔又比較短,那麼他們的內存空間的值是相同的。
>>> a = 257
>>> b = 257
>>> print(id(a))
2335729820784
>>> print(id(b))
2335761804048
>>> a = 255
>>> b = 255
>>> print(id(a))
1838517664
>>> print(id(b))
1838517664
二、垃圾回收機制(幫助管理內存)
當變量值與變量名失去關聯後就會變成一個無用的值,佔用內存空間,所以須要清除,釋放內存。
2.一、引用計數:變量值被變量名引用的次數,當次數爲0,垃圾回收機制就會自動清除 2.二、標記清除:當應用程序將內存撐滿的時候,會自動中止,清除垃圾2.三、分代回收:通過屢次掃描回收都沒有回收,就會下降掃描頻率