作者的話
不管是哪種編程語言都會有基本的數(shù)據(jù)類型,它們之前有的會存在共性,有的也會有獨特的特性,而它們各自獨特的性質(zhì),才使得它們都具備自己的編程特色;了解這些基本數(shù)據(jù)類型,熟悉它的語法,是你進(jìn)行編程的基石,這邊部分內(nèi)容不能說你一遍就能全部記住,往往是需要三到五遍,所以耐心的學(xué)習(xí)記憶才是根本,多去使用才能領(lǐng)會。所以學(xué)習(xí)此篇的關(guān)鍵在于,動手去Python環(huán)境去驗證我一下我這些內(nèi)容是否正確,一定要動手輸入,自己去判斷
基本數(shù)據(jù)類型
本篇會詳細(xì)介紹Python的基本類型,包括整形、浮點型;10、8、2、16進(jìn)制數(shù)的意義和轉(zhuǎn)換關(guān)系;布爾類型;字符串與字符串常見運算操作。本篇不會把所有細(xì)節(jié)都能涉及到,需要大家不斷地使用中理解和探索

Number 數(shù)字
這只是一個大分類,在其他的一些編程語言中,浮點數(shù)還會細(xì)分,單精度:float、雙精度:double,而整數(shù) 會有 short 、 int 、long
而對Python,只有int 整數(shù) float浮點型,至于上述的你就可以忽略了
什么是整數(shù)? 1,4,69,-9,78等等,就是數(shù)學(xué)定義上的整數(shù)
什么是浮點數(shù)?1.0, 3.3,-9.8等等,數(shù)學(xué)定義上的小數(shù)
暫且這么理解吧。自己去Python環(huán)境上去測試吧!
在編輯器里面去輸入下面的一些代碼吧:
>>> type(1)
>>> type(0.1)
>>> type(1+0.1)
>>> type(1+1)
>>> type(1*1)
>>> type(1*1.9)
# 得到 1.0 是個浮點型 為什么?
>>> type(2/2)
# 得到 1
>>> type(2//2)
type() 這個方法是取的括號內(nèi)的類型
/ 是得到 自動取浮點數(shù),// 整除,舍去浮點數(shù)部分,(Python2此處有區(qū)別)
我們此處的就簡單介紹到這個地步,更多深入的部分,在今后的使用中你會找到更多的
進(jìn)制
在這里我們簡單的聊一聊十進(jìn)制、二進(jìn)制、八進(jìn)制、十六進(jìn)制,這并不是Python特有,而是基本的數(shù)學(xué)概念
十進(jìn)制:滿10進(jìn)1;這個是我們?nèi)粘I钪兴佑|的
0、1、2、3、4、5、6、7、8、9、10
二進(jìn)制:滿2進(jìn)1;計算機(jī)語言
0、1、10、11、100、101
八進(jìn)制:滿8進(jìn)1;
0、1、2、3、4、5、6、7
十六進(jìn)制:滿16進(jìn)1;通常在一些硬件控制里面,通過十六進(jìn)制來傳輸信息,進(jìn)行控制等
0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F
在Python里面表示進(jìn)制
二進(jìn)制:
0b10相當(dāng)于10進(jìn)制的2八進(jìn)制:
0o10相對于10進(jìn)制的8十六進(jìn)制:
0x10相當(dāng)于10進(jìn)制的16;0x1F相對于10進(jìn)制的31
在Python里面進(jìn)制轉(zhuǎn)化
bin()方法將其轉(zhuǎn)化為二進(jìn)制
>>> bin(10) # 10進(jìn)制轉(zhuǎn)2進(jìn)制
'0b1010'
>>> bin(0o7) # 8進(jìn)制轉(zhuǎn)2進(jìn)制
'0b111'
>>> bin(0xE) # 10進(jìn)制轉(zhuǎn)2進(jìn)制
'0b1110'
>>>
int()方法將其轉(zhuǎn)化為十進(jìn)制
>>> int(0b111)
7
>>> int(0o77)
63
>>> int(0xF)
15
oct()方法將其轉(zhuǎn)化為八進(jìn)制
>>> oct(888)
'0o1570'
>>> oct(0b10101)
'0o25'
>>> oct(0xD)
'0o15'
hex()方法將其轉(zhuǎn)化為十六進(jìn)制
>>> hex(888)
'0x378'
>>> hex(0o777)
'0x1ff'
>>> hex(0b111)
'0x7'
如果你不能很好地理解,你可以打開Python的環(huán)境,輸入這些數(shù)然后嘗試去理解
其實進(jìn)制還有其他,比如:1分鐘60秒,24小時等于一天等等。。
布爾型bool 真假
>>> True # 首字符必須大寫
True
>>> type(True)
<class 'bool'>
>>> False
False
>>> type(False)
<class 'bool'>
>>> int(True) # 這也是為什么布爾歸類到number下面
1
>>> int(False)
0
>>> bool(1)
True
>>> bool(2.2)
True
>>> bool(0) # 數(shù)字除了0 其余都是真,只有0是假
False
>>> bool('kkk')
True
>>> bool('') # 字符串也是如此,空值都是假
False
>>> bool([1,2,9]) # 對于后面要學(xué)習(xí)的一些列“組”,只要是空,都為假
True
>>> bool({1,2,2})
True
>>> bool(None) # None表示空類型
False
bool()方法判斷真假
復(fù)數(shù)complex
只簡單了解如何表示,想學(xué)習(xí)更多,那你一定很喜歡數(shù)學(xué)吧,那自然就不需要我講了
>>> 36j
36j
這里講一講我們學(xué)習(xí)編程要把握主次,對于一門編程語言,要學(xué)習(xí)的知識很多,我們不能一蹴而就,所以要學(xué)會把握主次,先學(xué)習(xí)我們使用頻繁高,即業(yè)務(wù)上使用多的,我們只能說先掌握我們會使用到的,并且這樣子學(xué)習(xí)會不斷促進(jìn)我們學(xué)習(xí)更加深入,如果一直鉆牛角尖,去鉆研生僻知識會磨損自己的學(xué)習(xí)興趣。
對于數(shù)據(jù)類型,我前段時間也除了一個基本數(shù)據(jù)類型解釋,我這里就不在做其他解釋了,大家通過傳送門去閱讀吧。
