今天我們來簡單聊聊幾個數據類型(列表,元組,字典)...
首先List是有[]包括的,每個元素用(逗號)隔開,List中可以嵌套任何數據類型,數據類型可以相互嵌套(set除外)如:
li = ['a', 1, True, ('b', 'c',), [1, 2, 3], {'name': '鹹魚'}, {1, 2}]for i in li: print(type(i), i)
列表的取值li = ['a', 1, True, ('b', 'c',), [1, 2, 3], {'name': '鹹魚'}, {1, 2}]temp1 = li[0]print(temp1) temp2 = li[4][0]print(temp2) temp3 = li[1:5:]print(temp3)列表的遍歷
li = ['a', 1, True, ('b', 'c',), [1, 2, 3], {'name': '鹹魚'}, {1, 2}]for i in li: print(i)
j = 0 while j < len(li): print(li[j]) j += 1列表修改
li = ['a', 'b', 'c']li[0] = 'b'print(li)
li[0:2] = ['c','c']print(li)
str1 = 'abc'print(str1[0]) str1[0] = '1' 列表刪除li = ['a', 'b', 'c']del li[0]print(li)
li = ['a', 'b', 'c']temp1 = li.pop() print(li)print(temp1)temp2 = li.pop(0) print(li)print(temp2)
li = [11, '22', 22, 33, 44, 22]li.remove(22)print(li)
li = ['a', 'b', 'c']li.clear()print(li)列表插入
li = [1, 2, 3, 4, 5, 6]li.insert(2, 'lll') print(li)
li = [1, 2, 3, 4, 5, 6]li.append("aaa") li.append([11, 22, 33]) print(li)
li = [1, 2, 3, 4, 5, 6]li.extend("aaa") li.extend([11, 22, 33]) print(li)
li1 = [1, 2, 3, 4]li2 = ['a', 'b', 'c', 'd']li3 = li1+li2print(li3)
列表查詢li = [1, 2, 3, 4]res = 2 in liprint(res)
li = [1, 2, 2, 3, 2, 2, 3, 4]res = li.count(2)print(res)
li = [1, 2, 3, 4]res = li.index(2)print(res)列表反轉
li = [1, 'a', 2, 'b']li.reverse()print(li)列表排序,最大(小)值
li = [8, 2, 6, 8, 5]li.sort() print(li)
li = ['b', '5', 'z', 'y', 'r', 'l']li.sort()print(li)print(max(li))print(min(li))
列表和字符串的相互轉換
str1 = 'abcdefg'li = list(str1)print(li)
li = ['1', 'a', 'c', '2']s1 = ''.join(li)print(s1)
li = [1, 2, 'a', 'b']s1 = ''for i in li: s1 += str(i)print(s1)
元組是不可變類型,無法根據索引更改值,無法添加和刪除,元組用()包括,如:
tu = (111, "aaa", (11, 22, 33,), [(1, 2, 3)], 222, True, 333,)元組一樣可以索引,切片取值,遍歷,這裡不再演示
有兩個方法:
count(a) index(a,start,end)小知識:
元組也是小括號,與方法看起來一樣,為了方便區分,更加直觀,我們一般在後面多加一個逗號,這是一個良好的規範...,如:tu = (1,2,3,)
字典用{}包括,由key和value組成的鍵值對,字典是個無序集合 列表、字典不能作為key值,key值只能是唯一的,字典中依然可以嵌套其他的數據類型,如:
dic = { 'k1': 'v1', 'k2': 'v2', 'k3': 'v3', 'k2': 'v4', False: "aa", 0: "bb", 'k4': [1, 2, 3, 4], 'k5': { 'k1': 'v1' }}print(dic)
取值
dic = { 'k1': 'v1', 'k2': 'v2', 'k3': 'v3', 'k2': 'v4', False: "aa", 0: "bb", 'k4': [1, 2, 3, 4], 'k5': { 'k1': 'v11' }}print(dic['k5']['k1']) print(dic['k4'][0]) print(dic['kkkk']) print(dic.get('kkkk')) print(dic.get('kkkk', '不存在'))
遍歷
dic = { 'k1': 'v1', 'k2': 'v2', 'k3': 'v3', 'k2': 'v4', False: "aa", 0: "bb", 'k4': [1, 2, 3, 4], 'k5': { 'k1': 'v11' }}print('一:')for i in dic: print(i)
print('二:')for i in dic.keys(): print(i)
print('三:')for i in dic.values(): print(i)
print('四:')for i,j in dic.items(): print(i,j)
fromkeys
dic0 = dict.fromkeys('a') print(dic0)dic1 = dict.fromkeys('a', 'b')print(dic1)dic2 = dict.fromkeys('a', [1, 2, 3]) print(dic2)dic3 = dict.fromkeys(['a','b','c'], [1,2,3])print(dic3)
添加
dic = { 'k1': 'v1', 'k2': 'v2', 'k3': 'v3'}
dic['k4'] = 'v4'print(dic)
v1 = dic.setdefault('k1', 'v111')print(dic, v1)v2 = dic.setdefault('k123', 'v123')print(dic, v2)
修改
dic = { 'k1': 'v1', 'k2': 'v2', 'k3': 'v3', 'k4': 'v4', 'k5': 'v5'}
dic['k1'] = 'v111'print(dic)
dic.update({'k2': 'v222'})print(dic)dic.update({'k3': 'v333','k4':'k4444'})print(dic)dic.update(k5='k555')print(dic)dic.update(k6='k666')print(dic)
刪除
res = dic.pop('k1')print(dic,res)res = dic.pop('k111','key不存在')print(dic,res) k,v = dic.popitem()print(dic,k,v)dic.clear()print(dic)