python变量定义类型_03_python的数据类型和变量的定义及使用
1.數據類型按數值非數值分類
(1)python的數據類型可以分為 數字型 和 非數字型。
數字型
整型 (int)
浮點型(float)
布爾型(bool)
復數型 (complex)(主要用于科學計算)
非數字型
字符串
列表
元組
字典
(2)不同類型變量之間的運算問題:
數字型變量之間可以直接計算
字符串變量之間使用 +拼接字符串
字符串變量可以和 整數 使用 *重復拼接相同的字符串
數字型變量 和字符串之間不能進行其他計算
提示:在 Python 2.x 中,整數根據保存數值的長度還分為: int(整數) long(長整數)
2.按傳遞類型分類
(1)python語言參數傳遞類型
java中參數的傳遞是按值傳遞的。但是在python中,函數參數的傳遞是按引用傳遞的。因為python是弱類型的編程語言,定義變量不需要指定類型。因此,實際上python變量全部是指針,因為變量是指針,所以所有的變量無類型限制,可以指向任意對象。指針的傳遞即是引用傳遞。
在java中數據類型分為基本數據類型和引用數據類型。但是在python中所有的數據都是引用數據類型。但是引用數據類型又區部分為可變數據類型和不可變數據類型。
(2)python中的不可變數據類型
不可變數據類型中的不可變實際上指的是同一個數據,其地址不可變。當改變一個不可變數據類型的變量的值時,實際上python解釋器重新創建了一個對象(產生一個新的引用),為其賦了新值。
這種不可變數據類型在進行函數參數傳遞時類似于java語言中的基本數據類型。
a=5
b=5
b=6
b=7
例如上述代碼(int型為不可變數據類型):
執行第一、第二行代碼后,實際上a和b指向的是同一塊內存例如0x0000。這個時候,這塊內存被兩個變量引用。
當執行第三行代碼后,0x0000這塊內存處更新為被一個變量引用,并且內存中又重新開辟了一塊內存,用來存儲6,假設這塊內存的地址為0x0008。此時0x0008和0x0000都被一個變量引用。
當執行第四行代碼后,python解釋器又開辟了一塊內存,假設為0x000f,而由于0x0008這塊內存已經沒有變量引用它,它便會被系統回收掉。
(2)python中的可變數據類型
可變數據類型指的是,兩個變量引用同一塊內存,當其中一個變量執行改變內存中的數據的話,兩個變量會同時更新數據,并不會開辟一塊新內存。
這種可變數據類型在進行函數參數傳遞時類似于java中的按引用數據類型。
(3)python中的可變數據類型與不可變數據類型
不可變類型
數字類型 int, bool, float, complex, long(2.x)
字符串 str
元組 tuple
可變類型
列表 list
字典 dict(字典key的值只能是不可變數據類型)
可變數據類型的數據是通過方法改變的。
3.python的局部變量與全局變量
(1)局部變量與全局變量概述
局部變量 是在函數內部定義的變量,只能在函數內部使用。函數執行結束后,局部變量的內存就會被回收。
局部變量在函數執行時被創建,在函數執行完畢后被回收。期間便是局部變量的生命周期。
(2)局部變量定義的位置與生命周期
(3)全局變量定義的位置與生命周期
全局變量 是在函數外部定義的變量,所有函數內部都可以使用這個變量,全局變量一般定義在所有函數的上部(import下面)。
不允許使用賦值語句直接修改全局變量的值(修改全局變量的引用)。
如果想要在函數內部修改全局變量的值,可以做global聲明后再修改。
(4))全局變量的命名
一般定義全局變量時需要加前綴,例如:g_變量名或者gl_變量名。
4.python中變量的命名
python 標識符區分大小寫
python 可以采用的變量命名方式:
下劃線法
小駝峰法
大駝峰法
5.python中變量的定義與使用
定義:python是弱類型編程語言,它在定義變量時不需要指定數據類型。解釋器會根據賦值運算符右邊的數值進行自動識別數據類型。
使用:在 Python 中,每個變量在使用前都必須賦值,變量 賦值以后該變量才會被創建
注意:使用交互式和解釋器形式定義和使用變量上有所區別。
總結
以上是生活随笔為你收集整理的python变量定义类型_03_python的数据类型和变量的定义及使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: pythond的执行原理_D*路径规划算
- 下一篇: websocket python爬虫_p