1.什么是變數?
變數就是把程式運行的中間結果臨時存在記憶體中,以便后續代碼使用
2.為什么要有變數?
-
便于使用、修改
-
可以改變特性
-
為了讓計算機能夠像人一樣去記憶事物的某種狀態,并且狀態是可以發生變化的
3.變數的基本使用
變數基本使用
# 原則:先定義,后參考
name = "pig" # 定義-》存
print(name) # 參考-》取
4.變數的三大組成部分
-
變數名=》是指向等號右側值的記憶體地址的,用來訪問等號右側的值
-
賦值符號:將變數值的記憶體地址系結給變數名
-
變數值:代表記錄的事物的狀態
5.變數名命名規范
原則:變數名的命名應該見名知意
1-可以包括:字母、數字、下劃線
2-數字一定不能開頭 SyntaxError:invalid syntax
3-大小寫敏感 a !=A
4-不s能使用關鍵字:for if else 不能定義成變數
查看所有關鍵字
import keyword
print(keyword.kwlist)
5-內置函式名不能使用---否則該函式失去函式意義!--ex--print
6.變數名命名風格
純小寫加下劃線的方式(在python中,關于變數名的命名推薦使用這種方式)
age_old = 73
駝峰體
OldAge = 73
print(OldAge)
7.變數值三個重要的特征
-
id:反映的是變數值的記憶體地址,記憶體地址不同id則不同
-
type:不同型別的值用來表示記錄不同的狀態
-
value:值本身
8. is與==
-
比較左右兩個值身份id是否相等
-
比較左右兩個值他們的值是否相等
兩個等于的就是用來進行判斷的,判斷兩邊值是否相等,例如
a = 10
b = 10
print(a == b)
這樣就是查看==兩邊的值是否一樣.
id是個什么東西呢?
我們在定義一個變數時,記憶體空間中其實是開辟了一塊空間,這個開辟的空間是有號碼的
x = 668
# 59041088
is 也是判斷,只不過這次判斷的是兩邊值得記憶體地址是否相同
a = 10
b = 10
print(id(a)) # 2069029792
print(id(b)) # 2069029792
print(a is b) # True
# 獲取的結果是True是因為a和b的記憶體地址是相同的
9. 小整數池[-5,256]
從python解釋器啟動那一刻開始,就會在記憶體中事先申請好一系列記憶體空間存放好常用的整數
整數在程式中的使用非常廣泛,Python為了優化速度,使用了小整數物件池, 避免為整數頻繁申請和銷毀記憶體空間,
Python 對小整數的定義是 [-5, 256] 這些整數物件是提前建立好的,不會被垃圾回收,在一個 Python 的程式中,無論這個整數處于LEGB中的哪個位置,
所有位于這個范圍內的整數使用的都是同一個物件,同理,單個字母也是這樣的,
a = 500
b = 500
print(id(a)) # 59041968
print(id(b)) # 59041968
print(a is b) # True
不再區間內,怎么記憶體地址還是一樣的啊,這就要說說python的另一個機制 — 代碼塊
代碼塊是防止我們頻繁的開空間降低效率設計的,當我們定一個變數需要開辟空間的時候,它會先去檢測我們定義的這個值在空間中有沒有進行開辟,如果沒有開辟就開辟一個空間,如果記憶體中開辟過就使用同一個,
一個檔案,一個函式,一個模塊,一個類,終端中一行就是一個代碼塊
代碼塊支持:
-
字串:
-
定義字串的時候內容,長度任意記憶體地址相同,
-
字串進行乘法的時候總長度 <=20 記憶體地址相同,
-
中文,特舒符號 乘法的時候只能乘以1或 0
-
-
數字:
-
相同的數字記憶體地址相同
-
-
布林值:
-
相同的記憶體地址相同
-
在終端上測驗一下

當代碼塊和小資料池兩個在一起,先執行代碼塊
知道了代碼塊支持的資料型別和支持怎樣的操作,小資料池的支持資料型別和范圍:
小資料支持:
-
字串:
-
純字母和數字的時候長度任意,記憶體地址相同,
-
純字母和數字乘法總長度 <= 20 記憶體地址相同,
-
中文和特殊符號乘法的時候只能乘以 0 記憶體地址相同
-
-
數字:
-
-5 ~ 256
-
-
布林值:
-
True
-
False
-
小資料池和代碼塊都是Python內置的,開發的時候不使用,他們統稱為駐留機制,有了小資料池和代碼塊能夠提升Python的效率
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/67448.html
標籤:Python
上一篇:Python環境搭建
