最贊回答 / 李釗114
def __cmp__(self,s):??????? if isinstance(s,Student):??????????? return cmp(self.name,s.name)??????? else:??????????? return cmp(self.name,s)這是受到其他同學的啟發做出來的,你可以參考一下
2015-12-03
最新回答 / 小貓過河
1、返回一段話,格式是,(Person:xxx,xxx,……)。其中的%s就是占位符,意思是先占著位置,%(self.xxx,self.xxx)這句里的self.xxx表示傳入的變量,p=Person("Bob","male")表示實例化,給兩個值。這樣就可以顯示了。2、輸入p就顯示具體的內容,可以先封裝起來,然后引用,import xxx之后p就可以了,另外不知道你第二個問題是不是這個意思,我根據自己的理解寫的。
2015-12-03
最贊回答 / 拳拳
<...code...>你想寫的應該是這樣的,你的代碼里有點兒基本的錯誤,我稍作修改了一下。下面說一下我自己的理解這段代碼運行的時候會輸出 Bob 報錯會提示Person中沒有age的屬性,但是如果我們...
2015-11-26
最贊回答 / 誰能入我夢
這種情況是因為在python3里面,map()的返回值已經不再是list,而是iterators,?所以想要使用,只用將iterator 轉換成list 即可, 比如 ?list(map())?
2015-11-26
最新回答 / 達達里昂
同希望慕課網可以實現這個功能。python2.7 在線代碼測試一般的小程序懶得另開編輯器,都是用在線的python編輯器(支持其他主流語言,適用其他課程),把你的代碼粘進去,出問題后會報錯。
2015-11-25
最贊回答 / catdav
換個角度想:改之前,f()不帶參數,fs里的f都是完全一樣的,fs的內容是[f(),f(),f()]改之后,f(j)帶參數,循環后產生了三個f(),fs的內容是[f(1),f(2),f(3)]
2015-11-23
最贊回答 / 小二百
這里有兩個對象,一個是r1,另一個是r2,分別對應def __add__(self,r):中的self,r,r是一個對象,它有兩個屬性p和q,r1 = Rational(1, 2),r2 = Rational(1, 4),所以self.p=r1.p=1,?self.q=r1.q=2,r.p=r2.p=1,?r.q=r2.q=3,return?Rational(self.p * r.q + self.q * r.p, self.q * r.q) 表示返回兩個參數p和q的值,以便下面def __str__(s...
2015-11-17
最新回答 / 蟲蟲妞
cmp(x,y) 函數只是用于比較2個對象,如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1,并不會返回x或y。這個題中傳入了s1,s2。但是比較的時候只是借用對s1/s2轉換后的數值進行比較,返回的也只是-1、0、1。拆開也就相當于:def cmp_ignore_case(s1, s2):? ? s1 = s1.lower()? ? s2 = s2.lower()? ? if s1 > s2:? ? ? ? return 1? ? if s1 ...
2015-11-16