1. 程式人生 > >Python(day4)集合、布爾類型

Python(day4)集合、布爾類型

學習 highlight 沒有 logs discard 必須 keyerror als src

集合的作用一:關系運算
集合的作用二:去重


定義集合:
集合內的元素必須是唯一的;
集合內的元素必須是可hash的,也是就不可變類型;
集合是無序的

s={‘egon‘,123,‘egon‘,‘1‘}   #s=set({‘egon‘,123,‘egon‘,‘1‘} )
 print(s,type(s))

 s={‘1‘,1,[1,2]}
 s={‘1‘,1,(1,2),‘a‘,‘b‘}
 print(s)

循環

s={‘1‘,1,(1,2),‘a‘,‘b‘}
for i in s:
    print(i)

  

關系運算

python_s={‘egon‘,‘alex‘,‘鋼蛋‘,‘老王‘}
linux_s={‘alex‘,‘鋼蛋‘,‘歐德博愛‘,‘艾裏科四‘}

#取共同部分:交集
 print(python_s & linux_s)


 #取老男孩所有報名學習的學生:並集
 print(python_s | linux_s)

 #取只報名了python課程的學生:差集
 print(python_s - linux_s)

#取只報名了linux課程的學生:差集
 print(linux_s - python_s)


#取沒有同時報名python和linux課程的學:對稱差集

 print(linux_s ^ python_s)

 集合方法

#集合方法
 python_s={‘egon‘,‘alex‘,‘鋼蛋‘,‘老王‘}
 linux_s={‘alex‘,‘鋼蛋‘,‘歐德博愛‘,‘艾裏科四‘}


 print(python_s.intersection(linux_s))# 交集:python_s & linux_s

 print(python_s.union(linux_s))#並集:|

 print(python_s.difference(linux_s)) #python_s-linux_s

 print(python_s.symmetric_difference(linux_s))# 對稱差集,
 python_s ^ linux_s

 python_s={‘egon‘,‘alex‘,‘鋼蛋‘,‘老王‘}
 linux_s={‘alex‘,‘鋼蛋‘,‘歐德博愛‘,‘艾裏科四‘}
 python_s.difference_update(linux_s)
 print(python_s)

  集合操作類型

 s1={‘a‘,1}
 s1.add(1)    #追加一項
 print(s1)

 s1.discard(‘a‘)     #如果在 set “s”中存在元素 x, 則刪除
 s1.discard(‘b‘)
 print(s1)

 s1.remove(‘bbbbbbb‘)    #移除
 print(s1)


 s1={‘a‘,1,‘b‘,‘c‘,‘d‘}
 print(s1.pop())    #隨機刪除

  

總結

s.update(t)  
s |= t  
返回增加了 set “t”中元素後的 set “s”  
  
s.intersection_update(t)  
s &= t  
返回只保留含有 set “t”中元素的 set “s”  
  
s.difference_update(t)  
s -= t  
返回刪除了 set “t”中含有的元素後的 set “s”  
  
s.symmetric_difference_update(t)  
s ^= t  
返回含有 set “t”或者 set “s”中有而不是兩者都有的元素的 set “s”  
  
s.add(x)  
  
向 set “s”中增加元素 x  
  
s.remove(x)  
  
從 set “s”中刪除元素 x, 如果不存在則引發 KeyError  
  
s.discard(x)  
  
如果在 set “s”中存在元素 x, 則刪除  
  
s.pop()  
  
刪除並且返回 set “s”中的一個不確定的元素, 如果為空則引發 KeyError  
  
s.clear()  
  
刪除 set “s”中的所有元素  

布爾類型:

True和False
print(type(True))


count=10
print(bool(count > 10))

#所有的數據類型自帶布爾值,只有0,None,空的布爾值為False

 l=[]
 if len(l) == 0:
     print(‘列表為空‘)

 print(bool(l))
 if not l: #bool(l)
     print(‘列表為空‘)

  技術分享

字符串

定義:它是一個有序的字符的集合,用於存儲和表示基本的文本信息,‘’或“”或‘’‘ ’‘’中間包含的內容稱之為字符串
特性:
1.只能存放一個值
2.不可變
3.按照從左到右的順序定義字符集合,下標從0開始順序訪問,有序
補充:
  1.字符串的單引號和雙引號都無法取消特殊字符的含義,如果想讓引號內所有字符均取消特殊意義,在引號前面加r,如name=r‘l\thf‘
  2.unicode字符串與r連用必需在r前面,如name=ur‘l\thf‘

Python(day4)集合、布爾類型