最贊回答 / weixin_慕斯3464934
from?functools?import?reduce def?calc_prod(list_): ????def?lazy_prod(): ????????def?f(x,?y): ????????????return?x?*?y ????????return?reduce(f,?list_,?1) ????return?lazy_prod f?=?calc_prod([1,?2,?3,?4]) f()在最后一行代碼前面加上print?更改后為print f()
2020-11-02
最贊回答 / 真實如煙
input只接收用戶從鍵盤輸入的內容,please input number:不是用戶輸入的內容,用戶輸入的內容只有201,所以print(num)的時候結果是201
2020-10-29
已采納回答 / Zobeltitz
首先調用add函數實在創建Rational類之后的,所以在調用這個函數的時候Rational已經創建完了,不會出現問題Rational()是創建一個Rational類型的對象,調用的是__init__構造方法,這個函數返回一個Rational類型的對象,這個對象是運算結果
2020-10-22
已采納回答 / Zobeltitz
在自己自定義的類中的這兩個方法繼承自Object類,可能不符合自己的需求(比如說輸出太難讀了)。所以需要在自己的類中重寫這兩個方法,覆蓋繼承的這兩個方法,執行新的功能。(在Python的內建數據類型(字符串,整型等)中應該已經重寫過這個方法了)str和repr用戶和開發者都可以使用,結果均打印在命令行中。區別在于這兩個的函數的作用的定義,str注重用戶的可讀性(在某些應用里可能會輸出圖表之類的?),repr注重開發和調試期間的使用(課程中說:”在終端(Terminal)中直接輸入變量的時候“,用戶不太用直...
2020-10-20
最贊回答 / 不做實力派的型男不改昵稱
你這完全搞錯了,__str__是object對象的內置函數,而str()是python全局的一個內置函數,這兩個不是一個函數在使用? ? ?str(a)? ? ?時等價于? ? a.__str__()? ? ? ,即str方法會去調用對象的內置函數__str__.這里你可能會問,那為啥不寫a.__str__(),而是寫成str(a)。因為習慣規定雙下劃線的為私有級別,不建議直接調用,而且個人覺得寫起來代碼也不好看
2020-10-20