最赞回答 / 慕移动0023324
这个问题应该拆分为两个知识点:第一,关于i值的问题在for循环结束后,i的值没有被修改,所以它一直是i=3的状态。这个可以尝试在版本一的程序中,return fs前面修改一下i的值,比如 i = 9,看看结果是多少?第二,关于fs中所保存的内容在版本一的程序中,fs=[f(), f(), f()],所以打印f1、f2、f3的内容是一样的。在版本二(练习题的答案)的程序中,fs=[f(1), f(2), f(3)],所以打印f1、f2、f3的内容是不一样的。比如:print(f2()),实际就是调用f(2)...
2018-11-30
最赞回答 / 慕少11967
%s:表格式化为字符串%d:表格式化为整数,88为整数所以可以用%d,但是
(Student: %s, %s, %d )外面是加了引号的,不论你用%s还是%d,最终都是字符串形式,而__str__本身就该返回字符串,因此不会出错
2018-11-29
最新回答 / Alvin17
因为末尾有个空格,所以它匹配到末尾有个空格,没有匹配到‘n',就跳过了。正确的应该为: s.strip().strip('n')结果为:atcgatgccgtaaag
2018-11-29
最新回答 / 无用户名
1 def myDecorator(func, tag) 2 def myWrapper(*arg, **kvargs): #重新包装func,其参数列表与func一致 3 sign = "&urn" + tag + "&(*a" 4 return sign + func(*arg, **kvargs) + sign 5 return wrapper2 ...
2018-11-29
最赞回答 / qq_慕斯卡1317695
我的理解是,self下面同级的变量才可以这么赋值。比如name,gender,birth,**kw。也就是说**kw本身就是self的一个属性(至少从传参上面来说是这样的)。但是由于传入的参数是字典,所以后台用了这么个函数来实现而已。要不然应该是self.kw=kw这样的形式。说白了就是self里面没有k,v这个东西。
2018-11-27
最新回答 / 扬暄晴玥
& 是位运算;and 是逻辑运算。a = 1#a的十进制是1,二进制是01b = 2#b的十进制是2,二进制是10a & b#对a和b的二进制进行位运算,即,01&10 = 00,转换成十进制之后,为0a and b#对a和b进行逻辑与运算,a = 1为真,b = 2为真,返回b,即 a and b = 2短路计算:a and b,a为False,返回a,a为True,返回ba or b,a为False,返回b,a为True,返回aPython解释器在做布尔运算时,只要能提前确定...
2018-11-24
最赞回答 / qq_慕妹7534246
reversed_cmp返回的三种结果 ,对应的就是倒序,顺序,和相同。sorted()这个函数的功能就是顺序排序,但是为了响应不同的需求,所以加了一个参数,reversed_cmp这个里面你也可以做成顺序的,但是这样就没实际的意义了。
2018-11-21
最赞回答 / 慕田峪6055735
factorial作为一个参数传入装饰器,在答案中import timedef performance(unit): def perf_decorator(f): def wrapper(*args, **kw): t1 = time.time() r = f(*args, **kw) #这里就调用了f,也就是原函数factorial t2 = time.time() t = (t2 - t1...
2018-11-21