Python隨心記--集合及字串格式化
阿新 • • 發佈:2018-12-05
可變不可變型別
可變:列表、字典
不可變變數:字串、數字、元祖
訪問順序
直接訪問:數字
順序訪問:字串、列表、元祖
對映:字典
存放元素個數
容器型別:列表、元祖、字典
原子容器:數字、字串
集合定義
集合自能存放不可變型別變數:字串、數字、元祖
集合是由不同元素組合而成,所以會自動去重,
無序的
把其他型別轉為集合的方式:set()
set = {1,2,3,4} #集合類似字典,dict={'k1':18,'k2':True,'k3':[11,22,33,{'kk1':'vv1','kk2':(33,44,55)}]}
常用函式
set.add() #新增元素 set.slrar() #清空 set.copy() #拷貝 set.pop() #刪除,隨機刪除 set.ramove('s') #指定刪除元素,不存在會報錯 set.discard('s') #指定刪除,元素不不存在不會報錯 ste.intersection(ls) #交集(求set和ls的交集) ste&ls #交集(求set和ls的交集) set.union(ls) #並集(求set和ls的並集) set|ls #並集(求set和ls的並集) set.difference(ls) #差集(求set和ls的並集,注:set和ls位置不同結果會不同) ste.symmetric_difference(ls) #交叉補集(求set和ls的交叉補集) ste^ls #交叉補集(求set和ls的交叉補集) set.symmetric_difference_update() #求交叉補集並更新(求set和ls的交叉補集) set.isdisjoint(ls) #如果兩個沒有交集返回Tru,否則返回False set.issubset() #判斷是否是子集 返回Tru or Falseset.issuperset(ls) #判斷是否是父集 返回True or False set.update(ls) #把set更新成ls frozenset() #定義不可變集合
字元出格式化
msg = 'i am %s pang' %'lyf' #傳多個值: %('lyf','wyc') msg = 'i am \033[43;1m%(name)+60s\033[0m pang' %{'name':'linyifan'} #傳多個值: %('lyf','wyc'),帶顏色的喔
列印浮點數
'percent %.2f' %99.720
列印百分比
'percent %.2f %%' %99.720