python基礎(2)-數據類型

10.Python中數據類型:
計算機能處理的遠不止數值,還可以處理文本、圖形、音頻、視頻、網頁等各種各樣的數據,不同的數據,需要定義不同的數據類型。在Python中,能夠直接處理的數據類型有以下幾種:
整數
Python可以處理任意大小的整數,當然包括負整數,整數的表示方法相同,例如:1,100,-8080,0,等等。
計算機由於使用二進制,用十六進制表示整數比較方便,用0x前綴和0-9,a-f表示,如:0xff00,0xa5b4c3d2,等
浮點數
浮點數也就是小數,之所以稱爲浮點數,是因爲按照科學記數法表示時,一個浮點數的小數點位置是可變的,比如,1.23x109和12.3x108是相等的。浮點數可以用數學寫法,如1.23,3.14,-9.01等。但是對於很大或很小的浮點數,就必須用科學計數法表示,把10用e替代,1.23x10^9就是1.23e9,或者12.3e8,0.000012可以寫成1.2e-5等。
整數和浮點數在計算機內部存儲的方式是不同的,整數運算永遠是精確的(除法難道也是精確的?是的!),而浮點數運算則可能會有四捨五入的誤差。
字符串
字符串是以’‘或""括起來的任意文本,比如’abc’,“xyz"等等。請注意,’'或”“本身只是一種表示方式,不是字符串的一部分,因此,字符串’abc’只有a,b,c這3個字符。
布爾值
布爾值和布爾代數的表示完全一致,一個布爾值只有True、False兩種值,要麼是True,要麼是False,在Python中,可以直接用True、False表示布爾值(請注意大小寫),也可以通過布爾運算計算出來。
布爾值可以用and、or和not運算。
and運算是與運算,只有所有都爲 True,and運算結果纔是 True。
or運算是或運算,只要其中有一個爲 True,or 運算結果就是 True。
not運算是非運算,它是一個單目運算符,把 True 變成 False,False 變成 True。
空值
空值是Python裏一個特殊的值,用None表示。None不能理解爲0,因爲0是有意義的,而None是一個特殊的空值。
此外,Python還提供了列表、字典等多種數據類型,還允許創建自定義數據類型,我們後面會繼續講到
11.Python中變量:
在Python中,等號=是賦值語句,可以把任意數據類型賦值給變量,同一個變量可以反覆賦值,而且可以是不同類型的變量,這種變量本身類型不固定的語言稱之爲動態語言,與之對應的是靜態語言。靜態語言在定義變量時必須指定變量類型,如果賦值的時候類型不匹配,就會報錯。
12.Python中字符串
字符串可以用’'或者”“括起來表示。\n 表示換行 \t 表示一個製表符 \ 表示 \ 字符本身
例:“I’m OK”;‘Learn “Python” in imooc’;‘Bob said “I’m OK”.’(前面插入\表示其只爲一個普通字符)
多行字符串:‘Line 1\nLine 2\nLine 3’
例:請把下面的字符串用r’’’…’’‘的形式改寫,並用print打印出來:
‘“To be, or not to be”: that is the question.\nWhether it’s nobler in the mind to suffer.’
解:print (r’’’“To be,or not to be”:that is the question.
Whether it’s nobler in the mind to suffer.’’’)
13.Python中Unicode字符串:
計算機只能處理數字,如果要處理文本,就必須先把文本轉換爲數字才能處理。最早的計算機在設計時採用8個比特(bit)作爲一個字節(byte),所以,一個字節能表示的最大的整數就是255(二進制11111111=十進制255),0 - 255被用來表示大小寫英文字母、數字和一些符號,這個編碼表被稱爲ASCII編碼,比如大寫字母 A 的編碼是65,小寫字母 z 的編碼是122。如果要表示中文,顯然一個字節是不夠的,至少需要兩個字節,而且還不能和ASCII編碼衝突,所以,中國製定了GB2312編碼,用來把中文編進去。
轉義:u’中文\n日文\n韓文’
多行:u’’‘第一行
第二行’’’
raw+多行:ur’’'Python的Unicode字符串支持"中文”,
“日文”,
"韓文"等多種語言’’’
如果中文字符串在Python環境下遇到 UnicodeDecodeError,這是因爲.py文件保存的格式有問題。可以在第一行添加註釋 : # -- coding: utf-8 --
print (‘靜夜思’’\n’‘牀前明月光,’’\n’‘疑是地上霜。’’\n’‘舉頭望明月,’’\n’‘低頭思故鄉。’)
14.Python中整數和浮點數:
Python支持對整數和浮點數直接進行四則混合運算,運算規則和數學上的四則運算規則完全一致。和數學運算不同的地方是,Python的整數運算結果仍然是整數,浮點數運算結果仍然是浮點數:但是整數和浮點數混合運算的結果就變成浮點數了:
1 + 2 # ==> 整數 3 1.0 + 2.0 # ==> 浮點數 3.0 1 + 2.0 # ==> 浮點數 3.0
11 / 4 # ==> 2 11 % 4 # ==> 3 11.0 / 4 # ==> 2.75
15.Python中布爾類型:
a = True
print(“a” and “‘a = T’” or “‘a = F’”)
計算結果不是布爾類型,而是字符串 ‘a=T’,因爲Python把0、空字符串’'和None看成 False,其他數值和非空字符串都看成 True,所以:True and ‘a=T’ 計算結果是 ‘a=T’,繼續計算 ‘a=T’ or ‘a=F’ 計算結果還是 ‘a=T’

  1. 在計算 a and b 時,如果 a 是 False,則根據與運算法則,整個結果必定爲 False,因此返回 a;如果 a 是 True,則整個計算結果必定取決與 b,因此返回 b。
  2. 在計算 a or b 時,如果 a 是 True,則根據或運算法則,整個計算結果必定爲 True,因此返回 a;如果 a 是 False,則整個計算結果必定取決於 b,因此返回 b。
    例:a = ‘python’
    print(‘hello,’, a or ‘world’) #輸出爲:hello,ptyhon 因爲a 爲真,就直接輸出
    b = ‘’
    print(‘hello,’, b or ‘world’) #輸出爲:hello,world 因爲b爲假,就輸出後面的值,即:world
    16.Python創建list(列表):
    Python內置的一種數據類型是列表:list。list是一種有序的集合,可以隨時添加和刪除其中的元素。
    L = [‘Michael’,‘Bob’,‘Tracy’]
    L 輸出爲:[‘Michael’, ‘Bob’, ‘Tracy’]
    L = ['Adam ',95.5, 'Lisa ',85, 'Bart ',59]
    print L
    L = [‘95.5’, ‘85’, ‘59’]
    print(L[1]) #打印出正數第二個元素
    print(L[-1]) #打印出倒數第一個
    L = [‘Adam’, ‘Lisa’, ‘Bart’]
    L.insert(0, ‘Angel’) #添加新元素
    L.pop(2) #刪除第二個元素
    print(L)
    list.append(3) #向後面添加元素,參數可以是任何東西,作爲元素添加到列表尾部
    list.extend([5,6,7]) #使用一個序列擴展另一個序列,序列中的元素逐項添加到列表尾部
    17.Python創建tuple(元組):
    tuple是另一種有序的列表,中文翻譯爲“ 元組 ”。tuple 和 list 非常類似,但是,tuple一旦創建完畢,就不能修改了。
    t = (‘Adam’, ‘Lisa’, ‘Bart’, ‘Angel’)
    t1 = (0, 1, 2, 3, 4, 5, 6, 7, 8) #輸出:(0,1,2,3,4,5,6,7,8)
    t2 = (1,) #輸出:(1,)
    t2 = (‘Adam’,) #輸出:(‘Adam’,)
    print(t2)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章