1、變數的定義
程式中,資料都是臨時儲存在記憶體中,為了更快速的查詢或使用這個資料,通常我們把這個資料在記憶體中儲存之後,給整個資料定義一個名稱,這個名稱就是變數。
變數就是在儲存資料的時候,當前資料所在的記憶體地址的一個名字而已。
2、Python變數說明
- Python中使用變數,不需要宣告,直接為變數賦值即可。
- 在Python中,可以把任意資料型別賦值給變數,同一個變數可以反覆賦值,而且可以是不同型別的資料。
這種變數本身型別不固定的語言稱之為動態型別語言,與之對應的是靜態型別語言。靜態型別語言在定義變數時必須指定變數型別,如果賦值的時候型別不匹配,就會報錯,例如Java是靜態型別語言。和靜態型別語言相比,動態型別語言更靈活,就是這個原因。 - 不能使用沒有進行過賦值的變數,如果使用沒有賦值過的變數,會報錯
NameError: name '變數名' is not defined
。# 直接執行下面命令 # 結果:NameError: name 'a' is not defined print(a)
3、Python中定義變數
(1)定義語法
Python中定義變數的語法如下:
變數名 = 值
- 變數名自定義,要滿足識別符號命名規則。
- 程式設計中的等號是賦值的意思,程式在執行的時候是先計算等號右邊的值,儲存在一個記憶體空間中,然後把整個值儲存的地址賦值給等號左邊的變數。
(2)識別符號定義規則
變數名、函式名、類名、包名、模組名等統稱為識別符號。
識別符號命名規則是Python中定義各種名字的時候的統一規範,具體如下:
- 由數字、字母、下劃線組成。
- 不能數字開頭。
- 嚴格區分大小寫。
- 不能使用內建關鍵字和保留字。
(3)內建關鍵字
被Python語言賦予了特定含義的一些字元,換句話說就是Python保留給自己的識別符號。這些識別符號我們不能再使用如果我們在進行定義,就會產生衝突。
Python中所有關鍵字都為小寫字母,如下:
False None True and as assert break class
continue def del elif else except finally for
from global if import in is lambda nonlocal
not or pass raise return try while with
yield
不用刻意去記每個關鍵字的用法和意義,後面學習中,陸陸續續都會接觸到,自然而然就記住了。
注意:也別用Python API裡面的函式名作為識別符號,因為這樣會導致函式被覆蓋。(以後常用就知道了)
(4)識別符號命名習慣
上邊是定義識別符號的規則,必須要遵守。命名習慣是一種標準的規範,不遵守也沒事,只是不專業。
命名習慣型別:
- 見名知義:為了提高閱讀性,經常用有意義的英文單詞作為識別符號。
- 大駝峰:即每個單詞首字母都大寫,例如:
MyName
。 - 小駝峰:第二個(含)以後的單詞首字母大寫,例如:
myName
。 - 下劃線:例如:
my_name
。
Python具體名稱規範:
- 包名:多單片語成時所有字母都小寫。例如:
xxxyyyzzz
- 類名介面名:多單片語成時,所有單詞的首字母大寫。例如:
XxxYyyZzz
- 變數名和函式名:多單片語成時,第一個單詞首字母小寫,第二個單詞開始每個單詞首字母大寫。例如:
xxxYyyZzz
- 常量名:所有字母都大寫。多單詞時每個單詞用下劃線連線。例如:
XXX_YYY_ZZZ
4、使用變數
在Python中,先要定義一個變數,才能夠使用一個變數。
#定義變數
my_name = 'TOM'
#使用變數
print(my_name)
schoolName = '小二郎的學堂'
print(schoolName)
Python直譯器在執行程式碼的過程當中,是按照程式碼的書寫順序,自上而下,一行一行順序執行的。
Tips:應用程式執行原理
- 程式 執行之前,程式是 儲存在硬碟 中的。
- 當要執行一個程式時:
- 作業系統會首先讓 CPU 把程式複製到 記憶體 中。
- CPU 執行 記憶體 中的 程式程式碼。
- 即:程式要執行,首先要被載入到記憶體。
Tips:Python 程式執行原理
- 作業系統會首先讓 CPU 把 Python 直譯器 的程式複製到 記憶體 中。
- Python 直譯器 根據語法規則,從上向下 翻譯 Python 程式中的程式碼。
- CPU 負責執行翻譯完成的程式碼。
參考:https://www.liaoxuefeng.com/wiki/1016959663602400/1017063826246112