Python中的變數與常量

2022-09-24 14:33:25 字數 1919 閱讀 9880

目錄

無論是變數還是常量,在建立時都會在記憶體中開闢一塊空間,用於儲存它的值。

這是根據python的動態語言特性而來。變數可以直接使用,而不需要提前宣告型別。例如下面的a,b,c,d四個變數,在使用前沒有進行任何的諸如int a,str b,list c,int d的型別宣告,而這在c語言和j**a程式語言中是必須要攜帶的。

例如:a = 4

b = "haha"

c =

d = 9-5

a = 100

這裡的等號要理解並讀作「賦值」,而不是「等於」,「賦值」是對變數的操作,而「等於」是對兩個變數進行比較。上面的a,b,c,d四個變數,就通過「=」號,賦程式設計客棧予了不同的值。

每個變數在使用前都必須賦值,變數賦值以後才會被建立。

新的變數通過賦值的動作,建立並開闢記憶體空間,儲存值。如果沒有賦值而直接使用會丟擲賦值前引用的異常或者未命名異常。

例如:a # 孤單單乙個a,什麼也表示不了,只能報錯

a = 1 # 這樣就沒問題了,直譯器知道a是個新變數了

c.append(1) # c是個什麼鬼?

nameerror: name 'c' is not defined

結果:在python中,變數本身沒有資料型別的概念

通常所說的「變數型別」是變數所引用的物件的型別,或者說是變數的值的型別。

a = 1

a = "程式設計客棧haha"

a = [1, 2, 3]

a =

變數a在建立的時候,賦予了值為1的整數型別,然後又被改成字串「haha」,再又變成乙個列表,最後是個字典。變數a在動態的改變,它的值分別是不同的資料型別,這是動態語言的特點。

「=」號這個賦值運算子是從右往左的計算順序

a = 1

b = 2

c = a + b # 先計算a+b的值,再賦給c

print(c)

(例如:a = b = c = 1,最終大家都是1)。也可以同時為多個變數賦值,用逗號分隔,逐一對應。

例如:a, b, c = 1, 2, 3,最後a是1,b是2,c是3。

不要把賦值語句的等號等同於數學的等號。

x = 1

x = x + 2

如果從數學上理解x = x + 2那無論如何是不成立的,在程式中,賦值語句先計算右側的表示式x + 2,得到結果3,再賦給變數x。由於x之前的值是1,重新賦值後,x的值變成3。

a = 'abc'時,python直譯器幹了兩件事情:

也可以把乙個變數a賦值給另乙個變數b,這個操作實際上是將變數b指向變數a所指向的資料,

例如下面的**:

a = 'jack'

b = a

a = 'tom'

print(b)

print(a)

最後變數b的內容到底是'jack'還是'tom'?如果從數學意義上理解,就會錯誤地得出b和a相同是『tom',但實際上b的值還是'jack 『!

請牢記:python中的一切都是物件,變數是物件的引用!

圖:執行a = 『jack',直譯器建立字串『jack'物件和變數a,並把a指向『jack'物件;

執行b = a,直譯器建立變數b,並且將其指向變數a指向的字串『jack'物件;

執行a = 『tom',直譯器建立字串『tom'物件,並把a改為指向『tom'物件,與b無關。

常量就是不變的變數,比如常用的數學常數圓周率就是乙個常量。在python中,通常用全部大寫的變數名表示常量:

pi = 3.14159265359

但事實上,從python語法角度看,pi仍然是乙個變數,因為python根本沒有任何機制保證pi不會被改變。你完全可以給pi賦值為10,不會彈出任何錯誤。所以,用全部大程式設計客棧寫的變數名表示常量只是乙個習慣上的用法。

常量通常放置在**的最上部,並作為全域性使用。

python中的變數與常量

不管在python還是在其他語言,最終目的都是為了對資料進行處理。那麼這些資料儲存到 呢?實際上就是儲存在變數與常量當中.簡而言之,變數與常量都是用來儲存資料的容器。在建立的時候都會在記憶體中開闢一塊空間,用於儲存它的值。python中的變數不需要宣告型別 弱型別語言,動態語言 每個變數在使用前都必...

Python的常量與變數

變數的概念基本上和初中代數的方程變數是一致的,只是在電腦程式中,變數不僅可以是數字,還可以是任意資料型別。變數在程式中就是用乙個變數名表示了,變數名必須是大小寫英文 數字和 的組合,且不能用數字開頭。在python中,等號 是賦值語句,可以把任意資料型別賦值給變數,同乙個變數可以反覆賦值,而且可以是...

Python的常量與變數

常量與變數重點講變數 一 常量 常量的含義 在程式變數中不能改變的量。例如 2 2.3 4等 二 變數 變數的含義 在程式執行中可以改變的量。需要給變數乙個名字,如x,y,z等 定義乙個變數 a.變數名可以包括字母,數字和下劃線,但是數字不能作為開頭字元。如,a1是有效的,而1a就是無效的。b.系統...