那个思考题方法之一,
print sorted([s for s in L if isinstance(s, Student)])
print sorted([s for s in L if isinstance(s, Student)])
2016-05-14
def calc_prod(lst):
def fun():
res=1
for i in lst:
res*=i
return res
return fun
f = calc_prod([1, 2, 3, 4])
print f()
def fun():
res=1
for i in lst:
res*=i
return res
return fun
f = calc_prod([1, 2, 3, 4])
print f()
2016-05-14
def cmp_ignore_case(s1, s2):
return cmp(s1.lower(), s2.lower()) #请问s1和s2代表什么?这句代码看不懂???
print sorted(['bob', 'about', 'Zoo', 'Credit'], cmp_ignore_case)
以上代码的第二行不懂,求解!!!哈哈哈
return cmp(s1.lower(), s2.lower()) #请问s1和s2代表什么?这句代码看不懂???
print sorted(['bob', 'about', 'Zoo', 'Credit'], cmp_ignore_case)
以上代码的第二行不懂,求解!!!哈哈哈
2016-05-14
我来解释一下,理解了好久
就是说fs定义了一个list,但是底下的append步骤只是加入函数所以返回的fs里面就是fs=[f,f,f],当f函数计算时i已经为3,所以结果都是9
不用标准答案稍稍改一下代码
def count():
fs = []
for i in range(1, 4):
def f():
return i*i
fs.append(f())
return fs
d = count()
print d[0]
print d[1]
print d[2]
这次我是直接返回值,就会好啦
就是说fs定义了一个list,但是底下的append步骤只是加入函数所以返回的fs里面就是fs=[f,f,f],当f函数计算时i已经为3,所以结果都是9
不用标准答案稍稍改一下代码
def count():
fs = []
for i in range(1, 4):
def f():
return i*i
fs.append(f())
return fs
d = count()
print d[0]
print d[1]
print d[2]
这次我是直接返回值,就会好啦
2016-05-13
print filter(lambda s:s and len(s.strip())>0,['test', None, '', 'str', ' ', 'END'])
2016-05-13
def calc_prod(L):
def last():
cal=1
for x in L:
cal = cal * x
print cal
return last
ls=[1,2,3,4]
now = calc_prod(ls)
now()
def last():
cal=1
for x in L:
cal = cal * x
print cal
return last
ls=[1,2,3,4]
now = calc_prod(ls)
now()
2016-05-12
只改写count函数,以 f1(), f2(), f3()输出的方法:
global i
i=0
def count():
fs = []
def f():
global i
i+=1
return i*i
for cnt in range(3):
fs.append(f)
return fs
f1, f2, f3 = count()
print f1(), f2(), f3()
global i
i=0
def count():
fs = []
def f():
global i
i+=1
return i*i
for cnt in range(3):
fs.append(f)
return fs
f1, f2, f3 = count()
print f1(), f2(), f3()
2016-05-12
def __str__(self):
#if self.q == 1:
#return '%s' % (self.p)
return '%s/%s' % (self.p, self.q)
#if self.q == 1:
#return '%s' % (self.p)
return '%s/%s' % (self.p, self.q)
2016-05-11
类属性直接在class下一行,函数def上一行建立,同时用等号赋值
由于创建实例必定会调用__init__()方法,所以在这里修改类属性count很合适
由于创建实例必定会调用__init__()方法,所以在这里修改类属性count很合适
2016-05-11