-
有時候需要判斷兩個集合是否有重合的地方,如果使用傳統的方法,需要使用for循環一個一個的去判斷,非常麻煩,set提供isdisjoint()方法,可以快速判斷兩個集合是否有重合,如果有重合,返回False,否則返回True。
查看全部 -
item 遍歷問題
查看全部 -
????字符串format由兩個部分組成,字符串模板和模板數據內容組成,通過大括號{},就可以把模板數據內容嵌到字符串模板對應的位置。
查看全部 -
因為Python把0、空字符串和None看成False,其他數值和非空字符串都看成True,所以:True and 0計算結果是0?
繼續計算0 or 99計算結果是 99?
因此,結果是99。
需要注意的是,not計算的優先級是高于and和or的。查看全部 -
對小數點位數進行控制的函數
round(num1 , num2)
注:num1是運算的結果,需要控制位數的對象;num2是需要控制的位數 ;
查看全部 -
python現狀
底層應用(驅動等)
移動開發(安卓,ios)
游戲開發
查看全部 -
python:
被發明于1989年,相比java和c/c++而言,python運行效率最慢,代碼最少。
查看全部 -
就來了查看全部
-
print a and 'a=T' or 'a=F'
計算結果不是布爾類型,而是字符串 'a=T',這是為什么呢?
因為Python把0、空字符串''和None看成 False,其他數值和非空字符串都看成True,所以:True and 'a=T' 計算結果是 'a=T'
繼續計算 'a=T' or 'a=F' 計算結果還是 'a=T'
要解釋上述結果,又涉及到 and 和 or 運算的一條重要法則:短路計算。
1. 在計算a and b時,如果 a 是 False,則根據與運算法則,整個結果必定為 False,因此返回 a;如果 a 是 True,則整個計算結果必定取決與 b,因此返回 b。
2. 在計算a or b時,如果 a 是 True,則根據或運算法則,整個計算結果必定為 True,因此返回 a;如果 a 是 False,則整個計算結果必定取決于 b,因此返回 b。
所以Python解釋器在做布爾運算時,只要能提前確定計算結果,它就不會往后算了,直接返回結果。
查看全部 -
不會報錯的刪除方法discard()
除了使用remove()方法刪除元素以外,還可以使用discard()方法刪除元素,并且,和remove()不同的是,當元素不存在時,使用discard()并不會引發錯誤,所以使用discard()是更加高效的一個方法。
清除所有元素的方法clear()
和dict一樣,set也提供了clear()方法,可以快速清除set中的所有元素。
集合的子集和超集
set提供方法判斷兩個set之間的關系:
判斷s1是否為s2的子集:s1.issubset(s2)
判斷s2是否為s1的超集:s2.issuperset(s1)
判斷集合是否重合
有時候需要判斷兩個集合是否有重合的地方,如果使用傳統的方法,需要使用for循環一個一個的去判斷,非常麻煩,set提供isdisjoint()方法,可以快速判斷兩個集合是否有重合,如果有重合,返回False,否則返回True。
查看全部 -
刪除set元素
set提供了remove()方法允許我們刪除set中的元素,需要注意的是,如果remove的元素不在set里面的話,那么將會引發錯誤,因此,使用remove()方法,我們需要格外小心,需要提前判斷要remove()的元素是否在set里面,確保存在后,再進行remove。
查看全部 -
添加set元素
set提供了add()方法,我們可以使用add()方法,往set里面添加元素,對于set,如果添加一個已經存在的元素,不會報錯,也不會改變什么。
批量往set里面添加元素:set提供了update()方法,可以一次性給set添加多個元素。
查看全部 -
dict 的特點
1、查找速度快:查找速度不受元素個數影響,但是缺點是占用內存大
2、有序和無序:3.5版本之前是無序的,3.5版本之后是有序的
一般在需要有序的dict時,我們會使用叫做Ordereddict的字典,來確保有序。
3、Key不可變:對于基礎數據類型,字符串、數字等,這些都是不可變的,可以作為dict的key,而對于復雜數據類型,經過前面的學習,我們知道tuple是不可變的,list是可變的,因此tuple可以作為dict的key,但是list不可以作為dict的key,否則將會報錯。
遍歷dict(我們需要則需要遍歷dict(這種時候需要使用for循環))
遍歷dict有兩種方法:
1、第一種是遍歷dict的所有key,并通過key獲得對應的value。
for?key?in?d:?#?遍歷d的key ????value?=?d[key] ????if?value?>?60: ????????print(key,?value)
2、二種方法是通過dict提供的items()方法,items()方法會返回dict中所有的元素,每個元素包含key和value。
for?key,?value?in?d.items(): ????if?value?>?60: ????????print(key,?value)
查看全部 -
賦值語句其實有兩個功能:
1、當key不存在時,往dict中添加對應的key: value元素。
2、當key存在時,會更新dict,用新的value替換原來的value。
因此,在使用賦值語句往dict中添加元素時,為了避免不必要的覆蓋問題,我們需要先判斷key是否存在,然后再做更新。
查看全部 -
dict本身提供get方法,把key當作參數傳遞給get方法,就可以獲取對應的value,當key不存在時,也不會報錯,而是返回None。
查看全部
舉報