已采納回答 / 慕仰0186287
兄弟,你縮進有問題, __str__在__init__的縮進里,所以編譯器把__str__當成在__init__中定義的函數了python對縮進很嚴格的。。。
2019-08-30
已采納回答 / 慕哥1930468
我理解的,因為python的對象是可動態擴充屬性的,你看一下__slots__這一節:<...圖片...>所以如果添加了__slots__語句,就不可擴充屬性了,就不會出現你說的問題:<...圖片...>
2019-08-28
已采納回答 / 天很藍zpf
因為當你把g函數去掉,只保留return j*j 后,f 函數返回的就是一個int,那么fs這個集合就是int集合,那么count()方法返回的就是int集合,所以此時f1、f2、f3都是int,無法print? f1(),就會報這個錯:?'int' object is not callable
2019-08-21
已采納回答 / 天很藍zpf
此處把s用作邏輯“與”運算,與運算兩邊的表達式都是布爾類型,True或者False,在python里面如果s是整數0,空值None,空字符串'',空集合( )都會被判定為False。單單一個len(s.strip())>0只能用于判斷是否空字符串'',但0、空值none、空集合( )都用不了s.strip(),所以,將s放在and前面可以先過濾,當s是整數0,空值None,空字符串'',空集合( )時判定為False,那么and運算這時就“短路”直接返回False,當s是'? ? '這種字符串時,s...
2019-08-21
已采納回答 / 僵小虎
class?Person(object): ????def?__init__(self,?name,?score): ????????self.name?=?name ????????self.__score?=?score p?=?Person('Bob',?59) print?p.name try: ????print?p.__score except?AttributeError: ????print?'attribute?error'
2019-08-02
已采納回答 / 擁抱每天最早的陽光
L2 = sorted(L1,lambda p1, p2: cmp(p1.name, p2.name))中的p1和p2并不是指的上面的實例p1和p2<...code...>相當于一個函數,函數中的p1和p2就是函數的參數,拿出來可能會比較好理解<...code...>即<...code...>
2019-08-01
已采納回答 / 擁抱每天最早的陽光
當執行factorial(10)時,會先去執行注解,也就是@performance('ms')。因為帶參數,所以會先執行def performance(unit),把字符串ms傳到unit,然后會再把被注解的函數作為參數執行def perf_decorator(f),至此注解...
2019-07-30
已采納回答 / Run1fast
import?time def?performance(f):??????#3333333333扔到這來 ????def?fn(*args,?**kw):?#5555555555這里取傳入函數的參數 ????????t1?=?time.time()??#6666666666記錄當前時間 ????????r?=?f(*args,?**kw)?#...
2019-07-29