Day3:数据类型(布尔值、集合)
一、布爾值
布爾值和布爾代數的表示完全一致,一個布爾值只有True、False兩種值,要么是True,要么是False,在Python中,可以直接用True、False表示布爾值(請注意大小寫),也可以通過布爾運算計算出來:
>>> True True >>> False False >>> 3 > 2 True >>> 3 > 5 False布爾值可以用and、or和not運算。
and運算是與運算,只有所有都為True,and運算結果才是True:
>>> True and True True >>> True and False False >>> False and False False >>> 5 > 3 and 3 > 1 Trueor運算是或運算,只要其中有一個為True,or運算結果就是True:
>>> True or True True >>> True or False True >>> False or False False >>> 5 > 3 or 1 > 3 Truenot運算是非運算,它是一個單目運算符,把True變成False,False變成True:
>>> not True False >>> not False True >>> not 1 > 2 True布爾值經常用在條件判斷中,比如:
if age >= 18:print('adult') else:print('teenager')所有的數據類型自帶布爾值,只有0,None,空的布爾值為False
二、集合
定義集合:
集合內的元素必須是唯一的;
集合內的元素必須是可hash的,也是就不可變類型;
集合是無序的。
集合的作用一:關系運算;
集合的作用二:去重。
1、集合的創建
?{1,2,3,1}
或
定義可變集合set
>>> set_test=set('hello') >>> set_test {'l', 'o', 'e', 'h'}改為不可變集合frozenset
>>> f_set_test=frozenset(set_test) >>> f_set_test frozenset({'l', 'e', 'h', 'o'})2、集合的常用操作:關系運算
python_s={'egon','alex','鋼蛋','老王'}
linux_s={'alex','鋼蛋','歐德博愛','艾里科四'}
python_s ?& ?linux_s ?交集
python_s | linux_s ??并集
取只報名了python課程的學生:差集
python_s - linux_s
取只報名了linux課程的學生:差集
linux_s - python_s
取沒有同時報名python和linux課程的學:對稱差集
linux_s ^ python_s
?python_s.intersection(linux_s) 交集
python_s.union(linux_s) 并集
python_s.difference(linux_s)) ? ? ? 差集#python_s-linux_s
python_s.symmetric_difference(linux_s) 對稱差集,python_s ^ linux_s
python_s.difference_update(linux_s) 將linux_s的值更新到python_s的幾個集合中
.add() 給集合添加元素
.remove() 刪除集合中的元素,無元素會報錯
.discard() ?刪除集合中的元素,不報錯
.issubset() 判斷是否是子集
.issuperset() 判斷是否是父集
.isdisjoint() ?判斷是否有交集,沒有交集返回True
轉載于:https://www.cnblogs.com/Vee-Wang/p/6979698.html
總結
以上是生活随笔為你收集整理的Day3:数据类型(布尔值、集合)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: spring报错NoClassDefFo
- 下一篇: 关于面试,我也有说的