最新回答 / weixin_慕圣3493772
你在BasStudent里面两次调用了super方法,一厢情愿地认为会分别调用两个父类的init方法,但实际上不是,所以程序报错认为缺参数(可能是两次调用了同一个三参数的父类init方法)。具体原因我也没搞清楚,不过网上的忠告:不惜一切代价地避免多重继承,它带来的麻烦比能解决的问题都多。如果你非要用,那你得准备好专研类的层次结构,以及花时间去找各种东西的来龙去脉吧!
2022-03-05
最新回答 / 慕前端7080484
class BasStudent(Student,BasketballMixin): def __init__(self,name,gender,score,skill,basketball): super(BasStudent, self).__init__(name,gender,score) def getskill(n,k): print("我叫 %s,我会打%s "%(n,k))a=Student('jiji','boy',13)b=BasketballM...
2022-03-04
已采纳回答 / 慕前端7080484
直接输入变量,调用的是__repr__()方法,而__repr__()用于显示给开发人员。而当使用str()时,实际调用的是__str__()方法,所以要用str()来转换。下载视频
2022-03-04
最新回答 / 高飞的鱼
f = open("./test.txt",'r'),这里可以换成具体的文件路径,比如,
f = open('/Users/lihui/Desktop/hoho.txt', 'r')
2022-03-03
后面的例子可以理解成:
调用count()时给fs这个list每个位置都赋值了一个 i*i的函数,但因为返回值是函数f本身所以并没有调用,即fs = [i*i, i*i, i*i],此时里面的i并不表示实际值;当count()被调用完后for循环里的i已经到3,所以当调用fs这个list内的函数f1/f2/f3时都计算i*i,此时i代入3,所以三个结果都为9。
调用count()时给fs这个list每个位置都赋值了一个 i*i的函数,但因为返回值是函数f本身所以并没有调用,即fs = [i*i, i*i, i*i],此时里面的i并不表示实际值;当count()被调用完后for循环里的i已经到3,所以当调用fs这个list内的函数f1/f2/f3时都计算i*i,此时i代入3,所以三个结果都为9。
2022-02-15
class Animal:
__count=0
def __init__(self,name):
self.name=name
Animal.__count+=1
@classmethod
def get_count(self):
return self.__count
dog=Animal('liu')
print(dog.get_count())
cat=Animal('wang')
print(cat.get_count())
__count=0
def __init__(self,name):
self.name=name
Animal.__count+=1
@classmethod
def get_count(self):
return self.__count
dog=Animal('liu')
print(dog.get_count())
cat=Animal('wang')
print(cat.get_count())
2022-02-11