mysq優化三之buffer pool
Python的資料型別
1. 資料型別之整型 int
1.1 整數
整數就是除小數以外的其他數字,包括正整數、0、負整數
整數就是為了記錄比如班級人數,人的年齡,統計物體的個數等
1.2 整數在python中的表達
# 直接寫整數就是整數
2. 資料型別之浮點型 float
2.1 浮點數
浮點數就是除整數以外的其他數字,包括正浮點數、負浮點數
浮點數就是為了記錄比如人的身高、體重、股票的跌漲幅等
2.2 浮點數在python中表達
# 直接寫浮點數就是浮點數
3. 資料型別之字串 str
3.1 字串
字串就是一個有序的字元序列
主要用來記錄描述性性質的資料 eg:姓名、郵箱、地址
3.2 字串的定義
# 為什麼定義字串需要這麼多種方式?
目的是防止字串內部還需要使用引號 ,防止引起衝突
3.3 字串索引
1 str = 'Runoob' 2 3 print (str) # 輸出字串 4 print (str[0:-1]) # 輸出第一個到倒數第二個的所有字元 5 print (str[0]) # 輸出字串第一個字元 6 print (str[2:5]) # 輸出從第三個開始到第五個的字元 7 print (str[2:]) #輸出從第三個開始的後的所有字元 8 print (str * 2) # 輸出字串兩次,也可以寫成 print (2 * str) 9 print (str + "TEST") # 連線字串
4. 資料型別之列表 list
4.1 列表的作用、特徵
能夠儲存多個數據並且可以方便的取出任意個數
特徵:中括號括起來,內部可以存放多個元素,元素與元素之間逗號隔開,元素可以是任意資料型別
4.2 列表的索引值
索引值從0開始,從末尾開始時為-1
+ 是列表連結 *是重複操作
1 list = [ 'abcd', 786 , 2.23, 'runoob', 70.2 ] 2 tinylist = [123, 'runoob'] 3 4 print (list) # 輸出完整列表 5 print (list[0]) # 輸出列表第一個元素 6 print (list[1:3]) # 從第二個開始輸出到第三個元素 7 print (list[2:]) # 輸出從第三個元素開始的所有元素 8 print (tinylist * 2) # 輸出兩次列表 9 print (list + tinylist) # 連線列表
5. 資料型別之字典 dict
5.1 字典的作用,定義
作用: 能夠更加準確的儲存資料
列表是有序物件合集,字典是無序物件合集。兩者的區別是:字典中的元素使用鍵來存取的,而不是通過偏移存取的
字典是一種對映型別,字典用{}標識,他是無序的Key(鍵):Value(值)的集合
Key(鍵)必須使用不可變型別
在同一個字典裡Key必須是唯一的
1 tinydict = {'name': 'runoob','code':1, 'site': 'www.runoob.com'} 2 3 4 print (dict['one']) # 輸出鍵為 'one' 的值 5 print (dict[2]) # 輸出鍵為 2 的值 6 print (tinydict) # 輸出完整的字典 7 print (tinydict.keys()) # 輸出所有鍵 8 print (tinydict.values()) # 輸出所有值
5.2 字典注意點
1. 字典是對映型別,他的元素是鍵值對 Key(鍵):Value(值)
2. 字典的關鍵字必須是不可變型別,且不能重複
3. 建立空字典用{}
6. 資料型別之布林值 bool
6.1 布林值的定義,作用
布林值只有兩種狀態 True 正確的 False 錯誤的
用於判斷事物的對錯,是否可行
6.2 布林值的補充、擴充套件
6.2.1 布林值的命名
針對布林值的變數名一般採用is開頭
6.2.2 布林值小知識
在python中所有資料型別都可以轉換成布林值
布林值False的有:0,None,[],{}....
其他的都視為True
7. 資料型別之元組 tuple
7.1 元組的定義
元組與列表類似,不同之處在於元組的元素不能修改,元組的元素寫在()之中,用,隔開
元組中的資料型別也可以各不相同
1 tuple = ( 'abcd', 786 , 2.23, 'runoob', 70.2 ) 2 tinytuple = (123, 'runoob') 3 4 print (tuple) # 輸出完整元組 5 print (tuple[0]) # 輸出元組的第一個元素 6 print (tuple[1:3]) # 輸出從第二個元素開始到第三個元素 7 print (tuple[2:]) # 輸出從第三個元素開始的所有元素 8 print (tinytuple * 2) # 輸出兩次元組 9 print (tuple + tinytuple) # 連線元組
7.2 元組的索引
元組與字串類似,可以被索引且下標索引從0開始,-1為從末尾開始的位置,也可以進行擷取
可以把字串看成特殊的元組
tup = (1, 2, 3, 4, 5, 6) print(tup[0]) 1 print(tup[1:5]) (2, 3, 4, 5) tup[0] = 11 # 修改元組元素的操作是非法的 Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'tuple' object does not support item assignment
# 元組雖然不可以更改,但是他可以包含可更改的元素比如說列表
7.3 元組的額外語法及注意點
7.3.1 額外語法規則
1 tup1 = () # 空元組 2 tup2 = (20,) # 一個元素,需要在元素後新增逗號
7.3.2 注意
1. 與字串一樣,元組的元素不可修改
2. 元組也可以被索引、切片
3. 注意構造0和1個元素的元組的特殊語法
4. 元組也可以使用+操作符進行拼接
8. 資料型別之集合 set
8.1 集合
集合是由一個或者多個形態各異的大小整體組成的,構成集合的事物或物件被稱為元素或者成員
基本功能是進行成員關係測試和刪除重複元素
使用{}或者set()函式建立集合
*注意 建立空字典必須使用set(),而不能使用{},{}會建立一個空字典
parame = {value01,value02,...}
或者
set(value)
8.2 例項
1 sites = {'Google', 'Taobao', 'Runoob', 'Facebook', 'Zhihu', 'Baidu'} 2 3 print(sites) # 輸出集合,重複的元素被自動去掉 4 5 # 成員測試 6 if 'Runoob' in sites : 7 print('Runoob 在集合中') 8 else : 9 print('Runoob 不在集合中') 10 11 12 # set可以進行集合運算 13 a = set('abracadabra') 14 b = set('alacazam') 15 16 print(a) 17 18 print(a - b) # a 和 b 的差集 19 20 print(a | b) # a 和 b 的並集 21 22 print(a & b) # a 和 b 的交集 23 24 print(a ^ b) # a 和 b 中不同時存在的元素