首頁 > 軟體

Python 6種基本變數操作技巧總結

2022-03-22 13:00:29

前言

看到這裡已經學習了建立各種 Python 資料型別的值。並且顯示的值都是文字或常數值。

>>> print(9.98)
9.98

但是對於複雜程式碼的情況需要下,程式需要對應的數值隨著程式碼的變化而變化的情況並且進行更改。

可以 Python 程式中的每一項資料如何可以用抽象術語object來描述,使用稱為variables的符號名稱來操作物件

變數賦值

將變數視為附加到特定物件的名稱。在 Python 中,變數不需要像許多其他程式語言那樣事先宣告或定義。要建立變數需為其分配一個值,然後開始使用它。使用單個等號 ( =) 完成賦值。

>>> n = 998

這裡 n 被賦值 998。那麼 n 就可以在語句或表示式中使用,其值將被替換。

>>> print(n)
998

就像文字值可以直接從 REPL 對談中的直譯器提示中顯示,而不需要print()。

>>> n
998

如果更改 n 的值並再次使用它,則將替換為新值。

>>> n = 1000
>>> print(n)
1000
>>> n
1000

Python 還允許鏈式賦值,這使得可以同時將相同的值分配給多個變數。

>>> a = b = c = 998
>>> print(a, b, c)
998 998 998

變數型別

在許多程式語言中變數是靜態型別的。這意味著變數最初被宣告為具有特定的資料型別,並且在其生命週期內分配給它的任何值都必須始終具有該型別。

Python 中的變數不受此限制。在 Python 中,可以為變數分配一個型別的值,然後再重新分配一個不同型別的值。

>>> var = 1.5
>>> print(var)
1.5

>>> var = "string"
>>> print(var)
string

物件參照

Python 是一種高度物件導向的語言。事實上 Python 程式中的幾乎每一項資料都是特定型別或類的物件。

# 建立整數物件、賦值、列印
>>> print(100)
100
# 檢視資料型別
>>> type(100)
<class 'int'>

賦值建立一個具有值的整數物件,100並將變數分配 n 為指向該物件。

>>> print(n)
100
>>> type(n)
<class 'int'>

如果用另外的變數賦值,Python 不會建立另一個物件。只是建立一個新的符號名稱或參照,m 它指向同一個物件 n。叫 單個物件多次參照 。

>>> m = n

使用 value 建立一個新的整數物件 200,並m成為對它的參照的話就會形成 對單獨物件的參照 。

後面如果使用字串賦值。

>>> n = "foo"

不再有任何對整數物件的參照100,並且無法存取。

當一個物件的參照數降到零時,它就不再可以存取了。到那時,它的生命週期就結束了。Python 最終會注意到它不可存取並回收分配的記憶體,以便將其用於其他用途。在計算機術語中,這個過程被稱為 垃圾回收。

物件身份

在 Python 中,建立的每個物件都有一個唯一標識它的數位,並且不會存在生命週期兩個物件出現重疊的相同識別符號。一旦某個物件被 垃圾回收,那麼該識別符號可以再次使用。

內建 Python 函數 id() 返回物件的整數識別符號。使用該 id() 函數,可以驗證兩個變數確實指向同一個物件。

>>> n = 100
>>> m = n
>>> id(n)
2006284448
>>> id(m)
2006284448

>>> m = 200
>>> id(m)
2006287648

賦值後 m = n,m 兩者 n 都指向同一個物件,由事實證實 id(m) 和 id(n) 返回相同的數位。一旦 m 被重新分配給200,m 並 n 指向具有不同身份的不同物件。

變數名

Python 中的變數名可以是任意長度,可以由大小寫字母(A-Z, a-z)、數位(0-9)和下劃線字元(_)組成。另一個限制是,雖然變數名可以包含數位,但變數名的第一個字元不能是數位。

>>> name = "Mr資料楊"
>>> Age = 36
>>> is_teacher = True
>>> print(name, Age, is_teacher )
Mr資料楊 36 True

變數也有自己的命名規則。

  • 變數可以由字母、下劃線和數位組成。
  • 變數不能以數位開頭。
  • 變數不能與關鍵字重名。
  • 變數區分大小寫。
# 官方的命名規則
>>> my_name = "Mr資料楊"

# 小駝峰式命名法
>>> myName = "Mr資料楊"

# 大駝峰式命名法
>>> MyName = "Mr資料楊"

>>> age = 1
>>> Age = 2
>>> aGe = 3
>>> AGE = 4
>>> a_g_e = 5
>>> _age = 6
>>> age_ = 7
>>> _AGE_ = 8

>>> print(age, Age, aGe, AGE, a_g_e, _age, age_, _AGE_)
1 2 3 4 5 6 7 8

保留字(關鍵字)

不能衝突的關鍵詞 33 個

>>> import keyword
>>> print(",".join(keyword.kwlist))
>>> 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

具體含義如下,不用刻意去記,這些都會有區別於普通程式碼的顏色提示,你要是用他們做變數名了,一看就會知道的。

and: 用於表示式運算,邏輯與操作

as: 用於型別轉換

assert: 斷言,用於判斷變數或條件表示式的值是否為真

break: 中斷迴圈語句的執行

class: 用於定義類

continue: 繼續執行下一次迴圈

def: 用於定義函數或方法

del: 刪除變數或者序列的值

elif: 條件語句 與if else 結合使用

else: 條件語句 條件語句,與if,elif結合使用。也可以用於異常和迴圈使用

except: 包括捕獲異常後的操作程式碼,與try,finally結合使用

finally: 用於異常語句,出現異常後,始終要執行finally包含的程式碼塊。與try,except結合使用

from: 用於匯入模組,與import結合使用

global: 定義全域性變數

if: 條件語句,與else,elif結合使用

import: 用於匯入模組,與from 結合使用

in: 判斷變數是否存在序列中

is: 判斷變數是否為某個類的範例

lambda: 定義匿名函數

not: 用於表示式運算,邏輯非操作

or: 用於表示式運算,邏輯或操作

pass: 空的類,函數,方法的預留位置

print: 列印語句

raise: 異常丟擲操作

return: 用於從函數返回計算結果

try: 包含可能會出現異常的語句,與except,finally結合使用

while: 迴圈語句

with: 簡化Python的語句

yield: 用於從函數依次返回值

help(keywords 對應關鍵字) 可以通過鍵入Python 直譯器隨時檢視此列表。保留字區分大小寫,必須完全按照所示使用,除了 False , NoneTrue 其他都是區分大小寫。

>>> for = 1
SyntaxError: invalid syntax

到此這篇關於Python 6種基本變數操作技巧總結的文章就介紹到這了,更多相關Python變數操作內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com