變數儲存在記憶體中的值。這就意味著在建立變數時會在記憶體中開闢一個空間。
基於變數的資料型別,直譯器會分配指定記憶體,並決定什麼資料可以被儲存在記憶體中。
因此,變數可以指定不同的資料型別,這些變數可以儲存整數,小數或字元。
變數賦值
Python 中的變數賦值不需要型別宣告。
每個變數在記憶體中建立,都包括變數的標識,名稱和資料這些資訊。
每個變數在使用前都必須賦值,變數賦值以後該變數才會被建立。
等號(=)用來給變數賦值。
等號(=)運運算元左邊是一個變數名,等號(=)運運算元右邊是儲存在變數中的值。
例如:
以上實體中,100,1000.0和”John”分別賦值給counter,miles,name變數。
執行以上程式會輸出如下結果:
1001000.0John
多個變數賦值
Python允許你同時為多個變數賦值。
例如:
a = b = c = 1
以上實體,建立一個整型物件,值為1,三個變數被分配到相同的記憶體空間上。
您也可以為多個物件指定多個變數。
例如:
a, b, c = 1, 2, “john”
以上實體,兩個整型物件1和2的分配給變數 a 和 b,字串物件 “john” 分配給變數 c。
標準資料型別
在記憶體中儲存的資料可以有多種型別。
例如,一個人的年齡可以用數字來儲存,他的名字可以用字元來儲存。
Python 定義了一些標準型別,用於儲存各種型別的資料。
Python有五個標準的資料型別:
-
Numbers(數字)
-
String(字串)
-
List(串列)
-
Tuple(元組)
-
Dictionary(字典)
Python數字
數字資料型別用於儲存數值。
他們是不可改變的資料型別,這意味著改變數字資料型別會分配一個新的物件。
當你指定一個值時,Number物件就會被建立:
var1 = 1
var2 = 10
您也可以使用del陳述句刪除一些物件的取用。
del陳述句的語法是:
del var1[,var2[,var3[….,varN]]]]
您可以透過使用del陳述句刪除單個或多個物件的取用。例如:
del var
del var_a, var_b
Python支援四種不同的數字型別:
-
int(有符號整型)
-
long(長整型[也可以代表八進位制和十六進位制])
-
float(浮點型)
-
complex(複數)
一些數值型別的實體:
-
長整型也可以使用小寫”L”,但是還是建議您使用大寫”L”,避免與數字”1″混淆。Python使用”L”來顯示長整型。
-
-
Python還支援複數,複數由實數部分和虛數部分構成,可以用a + bj,或者complex(a,b)表示, 複數的實部a和虛部b都是浮點型
Python字串
字串或串(String)是由數字、字母、下劃線組成的一串字元。
一般記為 :
s=”a1a2···an”(n>=0)
它是程式語言中表示文字的資料型別。
python的字串串列有2種取值順序:
-
從左到右索引預設0開始的,最大範圍是字串長度少1
-
從右到左索引預設-1開始的,最大範圍是字串開頭
如果你要實現從字串中獲取一段子字串的話,可以使用變數 [頭下標:尾下標],就可以擷取相應的字串,其中下標是從 0 開始算起,可以是正數或負數,下標可以為空表示取到頭或尾。
比如:
s = ‘ilovepython’
s[1:5]的結果是love。
當使用以冒號分隔的字串,python傳回一個新的物件,結果包含了以這對偏移標識的連續的內容,左邊的開始是包含了下邊界。
上面的結果包含了s[1]的值l,而取到的最大範圍不包括上邊界,就是s[5]的值p。
加號(+)是字串連線運運算元,星號(*)是重覆操作。
如下實體:
以上實體輸出結果:
Python串列
List(串列) 是 Python 中使用最頻繁的資料型別。
串列可以完成大多數集合類的資料結構實現。它支援字元,數字,字串甚至可以包含串列(所謂巢狀)。
串列用[ ]標識。是python最通用的複合資料型別。看這段程式碼就明白。
串列中的值得分割也可以用到變數[頭下標:尾下標],就可以擷取相應的串列,從左到右索引預設0開始的,從右到左索引預設-1開始,下標可以為空表示取到頭或尾。
加號(+)是串列連線運運算元,星號(*)是重覆操作。
如下實體:
以上實體輸出結果:
Python元組
元組是另一個資料型別,類似於List(串列)。
元組用”()”標識。內部元素用逗號隔開。但是元組不能二次賦值,相當於只讀串列。
以上實體輸出結果:
以下是元組無效的,因為元組是不允許更新的。而串列是允許更新的:
Python 字典
字典(dictionary)是除串列以外python之中最靈活的內建資料結構型別。串列是有序的物件結合,字典是無序的物件集合。
兩者之間的區別在於:字典當中的元素是透過鍵來存取的,而不是透過偏移存取。
字典用”{ }”標識。字典由索引(key)和它對應的值value組成。
輸出結果為:
Python資料型別轉換
有時候,我們需要對資料內建的型別進行轉換,資料型別的轉換,你只需要將資料型別作為函式名即可。
以下幾個內建的函式可以執行資料型別之間的轉換。這些函式傳回一個新的物件,表示轉換的值。
函式 | 描述 |
---|---|
int(x [,base]) |
將x轉換為一個整數 |
long(x [,base] ) |
將x轉換為一個長整數 |
float(x) |
將x轉換到一個浮點數 |
complex(real [,imag]) |
建立一個複數 |
str(x) |
將物件 x 轉換為字串 |
repr(x) |
將物件 x 轉換為運算式字串 |
eval(str) |
用來計算在字串中的有效Python運算式,並傳回一個物件 |
tuple(s) |
將序列 s 轉換為一個元組 |
list(s) |
將序列 s 轉換為一個串列 |
set(s) |
轉換為可變集合 |
dict(d) |
建立一個字典。d 必須是一個序列 (key,value)元組。 |
frozenset(s) |
轉換為不可變集合 |
chr(x) |
將一個整數轉換為一個字元 |
unichr(x) |
將一個整數轉換為Unicode字元 |
ord(x) |
將一個字元轉換為它的整數值 |
hex(x) |
將一個整數轉換為一個十六進位制字串 |
oct(x) |
將一個整數轉換為一個八進位制字串 |
《Linux雲端計算及運維架構師高薪實戰班》2018年11月26日即將開課中,120天衝擊Linux運維年薪30萬,改變速約~~~~
*宣告:推送內容及圖片來源於網路,部分內容會有所改動,版權歸原作者所有,如來源資訊有誤或侵犯權益,請聯絡我們刪除或授權事宜。
– END –