1.變量

一、 變量的聲明

python語言是動態(tài)語言

  • 變量不需要事先聲明
  • 變量的類型不需要聲明

每個變量在使用前都必須賦值,變量賦值以后該變量才會被創(chuàng)建。

在 Python 中,變量就是變量,它沒有類型,我們所說的 類型是變量所指的內(nèi)存中對象的類型。

等號(=)用來給變量賦值。

等號(=)運(yùn)算符左邊是一個變量名,等號(=)運(yùn)算符右邊是其指向的具體的值。

a = 1
a = 'huang'


二、 變量命名規(guī)則:

可以包含以下字符

  • 大小寫字母(a-z,A-Z)

  • 變量名區(qū)分大小寫; a 和 A 是不同的變量

  • 數(shù)字(0-9)

  • 下劃線(_)

    ==不可以以數(shù)字開頭==


三、 變量命名潛規(guī)則:

  • 不要以單下劃線和雙下劃線開頭;如:_user或 __user
  • 變量命名要易讀;如:user_name,而不是username
  • 不用使用標(biāo)準(zhǔn)庫中(內(nèi)置)的模塊名或者第三方的模塊名
  • 不要用這些 Python 內(nèi)置的關(guān)鍵字:
>>> import keyword
>>> 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']

> 上面打印出來的數(shù)據(jù)在 Python 中被稱為列表, 列表是 Python中一種數(shù)據(jù)結(jié)構(gòu)。關(guān)于數(shù)據(jù)結(jié)構(gòu),后面的章節(jié)會詳細(xì)說明。
>列表的都是 Python3 中的關(guān)鍵字。

#可以使用一下方法驗(yàn)證,返回 True 就是 Python 的關(guān)鍵字
>>> keyword.iskeyword('del')
True
>>>


四、變量賦值

python 中使用等號 = 對變量進(jìn)行賦值,。

等號左邊被稱為變量名,等號右邊稱為變量的值,確切的說是對象

n = 5


五、Python 中的變量是什么

在 python 中究竟該如何正確理解變量的賦值過程呢?

s = 'hello'

以上的變量賦值,應(yīng)該說成把變量分配給對象更合理。

hello 這個字符串對象會在內(nèi)存中先被創(chuàng)建,之后再把變量名 s 分配給這個對象。

所以要理解 Python 中的變量賦值,應(yīng)該始終先看等號右邊。

對象是在右邊先被創(chuàng)建或者被獲取,在此之后左邊的變量名才會被綁定到對象上,這就像為對象貼上了標(biāo)簽。

變量名本質(zhì)上是對象的標(biāo)簽或者說是對象的名字,當(dāng)然一個對象可以有多個標(biāo)簽或者名字
比如: 張三 和 小張 指的都是同一個人

請看下面的代碼示例:

a = 1
b = a
a = 2
print(b)  # b 會是 ?

a = 1 時如下圖:

image

b = a 時如下圖:

image

a = 2 時如下圖:

image

上面的 b = a 我們稱它為 傳遞引用,此時對象會擁有兩個名稱(標(biāo)簽) ,分別是 ab


六、變量的多元賦值

在 Python3 中你可以這樣給變量賦值

In [2]: x, y, z = 1, 2, 3

In [3]: x
Out[3]: 1

In [4]: y
Out[4]: 2

In [5]: z
Out[5]: 3

當(dāng)然也可以這樣

In [10]: a, b, c = 'abc'

In [11]: a
Out[11]: 'a'

In [12]: b
Out[12]: 'b'

In [13]: c
Out[13]: 'c'

>>> s='qf'
>>> a,b=s
>>> a
'q'
>>> b
'f'

假如你需要對一個序列類型中的數(shù)據(jù)進(jìn)行一一解開賦值,那就需要等號左邊的變量名和序列類型數(shù)據(jù)中的元素個數(shù)相同。

這種多元賦值方式在 Python 中也可以稱為元組解包。


七、Python 中對象(變量的值)都有三個特性

# 唯一標(biāo)識,是對象在內(nèi)存中的整數(shù)表示形式,在 CPython 中可以理解為# 內(nèi)存地址
# 可以用 id 這個函數(shù)查看 
id(10)    # 直接給一個對象

id(n)      # 給你變量名

# 類型, 對象都有不同的類型,用 type 這個函數(shù)查看
type(10)

type(n)
# 值,對象本身
10

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容