def __str__(self): g = gcd(self.p, self.q) return '%s/%s' % (self.p / g, self.q / g) __repr__ = __str__ 請問這部分是干啥
def __str__(self): ? ? ? ?g = gcd(self.p, self.q) ? ? ? ?return '%s/%s' % (self.p / g, self.q / g) ? ?__repr__ = __str__ 請問這部分是干啥
def __str__(self): ? ? ? ?g = gcd(self.p, self.q) ? ? ? ?return '%s/%s' % (self.p / g, self.q / g) ? ?__repr__ = __str__ 請問這部分是干啥
2018-05-02
舉報
2018-05-03
__repr__= __str
____repr__和__str__這兩個方法都是用于顯示的,__str__是面向用戶的,而__repr__面向程序員
打印操作會首先嘗試__str__和str內置函數(print運行的內部等價形式),它通常應該返回一個友好的顯示。
__repr__用于所有其他的環境中:用于交互模式下提示回應以及repr函數,如果沒有使用__str__,會使用print和str。它通常應該返回一個編碼字符串,可以用來重新創建對象,或者給開發者詳細的顯示。
當我們想所有環境下都統一顯示的話,可以重構__repr__方法;當我們想在不同環境下支持不同的顯示,例如終端用戶顯示使用__str__,而程序員在開發期間則使用底層的__repr__來顯示,實際上__str__只是覆蓋了__repr__以得到更友好的用戶顯示。
2018-05-03
gcd函數是求最大公約數 return 返回得結果不就是每個數除以最大公約數,不就是最簡嗎