# 字典 #{}
dic = {} print(dic) print(type(dic)) # <class 'dict'>
# 語法格式 {'xuann':2,'lic':65} # key --- 鍵 # value --- 值 # 鍵值對 一個元素
# 1:創建字典
d1 = dict() print(d1) # 空字典 {}
# 2:通過直接賦值創建
di = {'sop':2,'kai':5} print(di) # {'sop': 2, 'kai': 5}
# 3:通過dict函數和關鍵字創建
die = dict(snian = 1,ajija = 6,) print(die) # {'snian': 1, 'ajija': 6}
# 4:通過二元組創建 通過列表轉字典
die =[(15,3),('nijao',3)] di = dict(die) print(di) # {15: 3, 'nijao': 3}
# 5:zip函數
re = zip([1,2,3,6,5,9]) # zip 后 為可迭代對象
print(re) # <zip object at 0x013FF1A8> 迭代器
for i in re: # 迭代循環
print(i) # (1,)
# (2,)
# (3,)
# (6,)
# (5,)
# (9,)
re = zip([1,2,3,4],[11,22,33,44]) for i in re: print(i) # (1, 11) # (2, 22) # (3, 33) # (4, 44)
re = zip('nihao',[1,2,3,4,5,]) for i in re : print(i) # ('n', 1) # ('i', 2) # ('h', 3) # ('a', 4) # ('o', 5)
# print(re.__next__()) # (1,) # 先用zip函數迭代出元組形式的元素 取出 放到字典里
de = dict(zip('mijao',[1,2,35,4,8])) print(de) # {'m': 1, 'i': 2, 'j': 35, 'a': 4, 'o': 8}
# 6:通過字典的推導式 創建 # lis = [i*2 for i in range] list 推導式
dic = {str(i) : i*2 for i in range(9)} #dict 推導式
print(dic) #{'0': 0, '1': 2, '2': 4, '3': 6, '4': 8, '5': 10, '6': 12, '7': 14, '8': 16}
# 7:用 dict.fromkeys #通常用來初始化字典,設置value的默認值
di = dict.fromkeys('nihao',3) # {k:value,k:value,k:value,........}
print(di) # {'n': 3, 'i': 3, 'h': 3, 'a': 3, 'o': 3}
# 8: 其他方式
l = ['x',1,'y',2,'o',5] de = dict(zip(l[::2],l[1::2])) print(de) # {'x': 1, 'y': 2, 'o': 5