~含義是什麼?
按位取反運算符:
對數據的每個二進制位取反,即把1變爲0,把0變爲1 。
~x 類似於 -x-1
利用~來求數組中位數
首先我們給定一個數組吧,比如[5,3,2,4,1, 6]
。
其實可以知道,中位數位偶數的時候是取均值,而奇數個的時候取的是中間的那個,其實可以用if
語句來完成,但是這樣寫可以省下幾行,雖然意義不大,但的確很有意思。
list = [5,3,2,4,1, 6]
list.sort()
length = len(list)
half = length//2
median = (list[half] + list[~half])/2
當然你也可以用-half-1
來代替~half
,不過很顯然~half
短一些。