從零開始學Python(四):變量與基本數(shù)據(jù)類型

上一章我們簡單的了解了一下python的代碼縮進,基礎(chǔ)的輸出語句,多行語句和單行多行注釋,今天我們來了解下python的變量與基本數(shù)據(jù)類型,讓我們在以后的編程中,對各種類型了如指掌!

變量的賦值

為了方便給下面各種數(shù)據(jù)類型做詳解,我們首先學習一下變量的賦值,python中的賦值和其他語言的賦值類似,都是用=號從右到左賦值,也支持連續(xù)賦值.(注意:python中定義一個變量的時候,變量類型是可以省略的,只需要寫變量名,系統(tǒng)會自動判斷該變量名對應(yīng)的類型是什么)
具體看下圖:

counter = 100 # 賦值整型變量
miles = 1000.0 # 浮點型
name = "John" # 字符串
a = b = c = 1  #連續(xù)賦值

五種標準數(shù)據(jù)類型

python中定義了五種標準的數(shù)據(jù)類型,來進行變量和賦值(注意這些類型都是對象哦).

  1. Numbers(數(shù)字)
  2. String (字符串)
  3. List (列表)
  4. Tuple (元組)
  5. Dictionary (字典)

下面我們將會對五種數(shù)據(jù)類型做一一詳解.

1.Numbers (數(shù)字)數(shù)據(jù)類型

從字面解釋我們就可以看出,numbers數(shù)據(jù)類型一般都是用來存儲數(shù)值
他們是不可改變的數(shù)據(jù)類型,這意味著改變數(shù)字數(shù)據(jù)類型會分配一個新的對象.

當你指定一個值得時候,Numbers對象就會被創(chuàng)建:

a=1 #自動創(chuàng)建了一個變量名為a的對象引用
b=2  

我們也可以對對象的引用進行刪除

del a   #單獨刪除一個對象的引用
del a,b #同時對多個對象引用進行刪除

Numbers支持四種基本的數(shù)字類型:

  • int (整型)
  • float (浮點型)
  • long (長整型)
  • complex (復數(shù)類型)

下面對五種類型舉例:

int float long complex
10 51924361L 0.0 3.14j

Tips:我們一般用L來表示長整型,當然也可以用小寫的l,但為了和1區(qū)分,建議用大寫,

Python 還支持復數(shù),復數(shù)由實數(shù)部分和虛數(shù)部分構(gòu)成,可以用 a + bj,或者 complex(a,b) 表示, 復數(shù)的實部 a 和虛部 b 都是浮點型。

2.String (字符串)數(shù)據(jù)類型

上一章我們也講了字符串的表示方式,這里我們詳細定義以下:字符串是由雙單引號(雙引號,三引號也行)和字母,數(shù)字,下劃線組成.

str='abcdefg_2gt' #由數(shù)字字母,下劃線組成
2.1 python字符串支持兩種取值順序:
  • 從左到右索引默認0開始的,最大范圍是字符串長度少1
  • 從右到左索引默認-1開始的,最大范圍是字符串開頭

如果我們需要截取一段字符串,我們可以通過變量[頭下標:尾下標]來進行截取,下標可以為空,表示取到尾,如下例:

s='abcdef' 
b=s[1:3] #截取頭下標為1,尾下標為3的字符
b2=s[1:] #截取頭下標為1,尾下標未指定
b3=s[1] #截取頭下標為1,尾下標未指定
print b
print b2  
print b3 

輸出:

bc   #s[1:3] 截取的字符串
bcdef    #s[1:] 截取的字符串
b   #s[1]截取的字符串
2.2 字符串連接

加號(+)是字符串連接運算符,星號(*)是重復操作,如下圖:

>>> a='abcdef'+'hkl'; print a
abcdefhkl  #輸出
>>> a='abc'*2 ;print a
abcabc  #輸出

3.List 列表

List(列表) 是 Python 中使用最頻繁的數(shù)據(jù)類型。(屬于有序的對象類型)
列表可以完成大多數(shù)集合類的數(shù)據(jù)結(jié)構(gòu)實現(xiàn)。它支持字符,數(shù)字,字符串甚至可以包含列表(即嵌套)。
列表用 [ ] 標識,是 python 最通用的復合數(shù)據(jù)類型。
列表中值的切割也可以用到變量 [頭下標:尾下標] ,就可以截取相應(yīng)的列表,從左到右索引默認 0 開始,從右到左索引默認 -1 開始,下標可以為空表示取到頭或尾。
加號 + 是列表連接運算符,星號 * 是重復操作。如下實例:

ul=['a','b','c','d','e']
lk=['g','f']

print ul[0]
print ul[1:3]
print ul[1:]
print ul[:3]
print ul+lk
print lk*2

運行結(jié)果:

a
['b', 'c']
['b', 'c', 'd', 'e']
['a', 'b', 'c']
['a', 'b', 'c', 'd', 'e', 'g', 'f']
['g', 'f', 'g', 'f']
4. Tuple 元組

元組和列表類似,一般用()來表示,他和列表最大的區(qū)別在于,元組里面的內(nèi)容是不可變的,列表是可變的.相當于只讀列表,以下是示例:

#codint=utf-8

ul=('a','b','c','d','e')
lk=('g','f')

# ul[2]='h'   #次句代碼會報錯,因為元組內(nèi)容是不允許更新賦值的

print ul[0]
print ul[1:3]
print ul[1:]
print ul[:3]
print ul+lk
print lk*2

輸出結(jié)果:

a
('b', 'c')
('b', 'c', 'd', 'e')
('a', 'b', 'c')
('a', 'b', 'c', 'd', 'e', 'g', 'f')
('g', 'f', 'g', 'f')

5. Dictionary字典類型

字典類型也是python種最常用的數(shù)據(jù)類型之一,基本我們很多地方都會用到, 比如json數(shù)據(jù)解析,爬蟲數(shù)據(jù)解析等等,我們最后都會將解析的數(shù)據(jù)組成一個字典類型,方便存儲和交換賦值.字典類型屬于無序的集合對象類型,里面的值一般都是用鍵值對的方式存儲.
字典用"{ }"標識。字典由索引(key)和它對應(yīng)的值value組成。

ul={'a1':'b','a2':'d','a3':'e',2:'111'}


print ul    #輸出整個字典對象
print ul['a1']  #輸出鍵為a1的value值
print ul[2]    #輸出鍵為2的value值
print ul.keys()   #輸出所有的鍵
print ul.values() #輸出所有value

運行結(jié)果:

{'a1': 'b', 'a3': 'e', 'a2': 'd', 2: '111'}
b
111
['a1', 'a3', 'a2', 2]
['b', 'e', 'd', '111']

Python類型轉(zhuǎn)換

有時候,我們需要對數(shù)據(jù)類型的變量進行轉(zhuǎn)換,一般我們只需要將數(shù)據(jù)類型變量名作為函數(shù)即可.如下圖:

函數(shù) 描述
int(x [,base]) 將x轉(zhuǎn)換為一個整數(shù)
long(x [,base] ) 將x轉(zhuǎn)換為一個長整數(shù)
float(x) 將x轉(zhuǎn)換到一個浮點數(shù)
complex(real [,imag]) 創(chuàng)建一個復數(shù)
str(x) 將對象 x 轉(zhuǎn)換為字符串
repr(x) 將對象 x 轉(zhuǎn)換為表達式字符串
eval(str) 用來計算在字符串中的有效Python表達式,并返回一個對象
tuple(s) 將序列 s 轉(zhuǎn)換為一個元組
list(s) 將序列 s 轉(zhuǎn)換為一個列表
set(s) 轉(zhuǎn)換為可變集合
dict(d) 創(chuàng)建一個字典。d 必須是一個序列 (key,value)元組。
frozenset(s) 轉(zhuǎn)換為不可變集合
chr(x) 將一個整數(shù)轉(zhuǎn)換為一個字符
unichr(x) 將一個整數(shù)轉(zhuǎn)換為Unicode字符
ord(x) 將一個字符轉(zhuǎn)換為它的整數(shù)值
hex(x) 將一個整數(shù)轉(zhuǎn)換為一個十六進制字符串
oct(x) 將一個整數(shù)轉(zhuǎn)換為一個八進制字符串

Q&A

以上就是基本類型的全部內(nèi)容啦,這是基礎(chǔ)的重中之重,希望大家能夠在日后的學習中,慢慢的牢記所有類型的用法.下一章節(jié),博主將帶領(lǐng)你了解一下python的一些常用的函數(shù)語句

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

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

  • 1. Python 變量類型 變量存儲在內(nèi)存中的值。這就意味著在創(chuàng)建變量時會在內(nèi)存中開辟一個空間?;谧兞康臄?shù)據(jù)類...
    張松貴閱讀 458評論 0 0
  • 今天發(fā)小打電話給我,她的男朋友來我們老家見她的父母。我發(fā)小說讓我過去一塊兒吃個飯,也見見他男朋友。 我見到了發(fā)小的...
    風乞閱讀 244評論 4 0
  • 繼續(xù)
    簡之如素閱讀 175評論 0 0
  • 大海比我想象的要寬,天空比我想象的要潔凈 希望比我想象的要開心,生活比我想象的要破碎 沒去過遠方的我,大膽的想象著...
    導演張升志閱讀 193評論 0 0
  • 時隔多年,我還是能想起初見你時的心動,只是你不再知道,畢竟有一些人,錯過便不會再回來。 如果可以選擇,是要一個人驚...
    穎寶寶是個寶閱讀 169評論 0 0

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