1. 程式人生 > >解析python部分常用操作

解析python部分常用操作

1     def __add__(self, *args, **kwargs): # real signature unknown
2         """ Return self+value. """
3         pass

返回相加數值

1     def __alloc__(self): # real signature unknown; restored from __doc__
2         """
3         B.__alloc__() -> int
4         
5         Return the number of bytes actually allocated.
6 """ 7 return 0

返回實際佔用位元組數

1     def __eq__(self, *args, **kwargs): # real signature unknown
2         """ Return self==value. """
3         pass

相當於==

1     def __ge__(self, *args, **kwargs): # real signature unknown
2         """ Return self>=value. """
3         pass

相當於 >=

1     def __gt__(self, *args, **kwargs): # real signature unknown
2         """ Return self>value. """
3         pass

判斷self是否大於 為真返回True,假返回False

1     def __abs__(self, *args, **kwargs): # real signature unknown
2         """ abs(self) """
3         pass

實現了內建函式abs()  取絕對值

1     def __bool__(self, *args, **kwargs): # real signature unknown
2         """ self != 0 """
3         pass

判斷是否不等於0 為真返回True,假返回False

1     def __divmod__(self, *args, **kwargs): # real signature unknown
2         """ Return divmod(self, value). """
3         pass

實現了內建函式divmod 取兩個值的除數和餘數運算結果結合起來,返回一個包含商和餘數的元組(a // b, a % b)。

1     def __float__(self, *args, **kwargs): # real signature unknown
2         """ float(self) """
3         pass

實現了內建float函式  float()函式用於將整數和字串轉換成浮點數。

1     def __floordiv__(self, *args, **kwargs): # real signature unknown
2         """ Return self//value. """
3         pass

相當於除 取整數 int

1     def __format__(self): # real signature unknown; restored from __doc__
2         """
3         complex.__format__() -> str
4         
5         Convert to a string according to format_spec.
6         """
7         return ""

我自己的理解是預設呼叫時 例如

a="a"

b = a.__format__(str(4))

print(b) # b="a   "

print(len(b)) # 

類似於format 預設以空格連線

下面是其他人的呼叫方法將__format__重寫 使其拼接的不是空格

__format__()傳參方法:someobject.__format__(specification)

  specification為指定格式,當應用程式中出現"{0:specification}".format(someobject)或format(someobject, specification)時,會預設以這種方式呼叫

  當specification為" "時,一種合理的返回值是return str(self),這為各種物件的字串表示形式提供了明確的一致性

  注意,"{0!s}".format()和"{0!r}".format()並不會呼叫__format__()方法,他們會直接呼叫__str__()或者__repr__()

1  def __getattribute__(self, *args, **kwargs): # real signature unknown
2         """ Return getattr(self, name). """
3         pass

實習了getattr 函式用於返回一個物件屬性值。可以設定預設值

 def __getnewargs__(self, *args, **kwargs): # real signature unknown
        pass

取出系列化恢復後的狀態

1     def __hash__(self, *args, **kwargs): # real signature unknown
2         """ Return hash(self). """
3         pass
__hash__方法就是將其id/16取整後作為integer返回
1     def __init__(self, real, imag=None): # real signature unknown; restored from __doc__
2         pass

初始化一個例項

1     def __int__(self, *args, **kwargs): # real signature unknown
2         """ int(self) """
3         pass

內建函式int

1     def __le__(self, *args, **kwargs): # real signature unknown
2         """ Return self<=value. """
3         pass

相當於小於等於只能返回