@property
def grade(self):
return 'A' if self.__score >= 80 else 'B' if self.__score >= 60 else 'C'
def grade(self):
return 'A' if self.__score >= 80 else 'B' if self.__score >= 60 else 'C'
2015-06-28
from __future__ import division
def __float__(self):
return self.p / self.q
def __float__(self):
return self.p / self.q
2015-06-28
class Fib(object):
def __init__(self,num):
self.list = []
for x in range(0,num):
if x < 2:
self.list.append(x)
else:
self.list.append(self.list[x-2]+self.list[x-1])
def __len__(self):
return len(self.list)
def __str__(self):
return self.list.__str__()
def __init__(self,num):
self.list = []
for x in range(0,num):
if x < 2:
self.list.append(x)
else:
self.list.append(self.list[x-2]+self.list[x-1])
def __len__(self):
return len(self.list)
def __str__(self):
return self.list.__str__()
2015-06-28
def count():
fs = []
for i in range(1, 4):
def calc():
a = i 为什么我把a从形参里拿出来写到这里就不行呢?
return a*a
fs.append(calc)
return fs
f1, f2, f3 = count()
print f1(), f2(), f3()
fs = []
for i in range(1, 4):
def calc():
a = i 为什么我把a从形参里拿出来写到这里就不行呢?
return a*a
fs.append(calc)
return fs
f1, f2, f3 = count()
print f1(), f2(), f3()
2015-06-27
看到有人用title()和capitalize()函数,去help()了一下这两个函数,给个例子说明这两个函数的区别:
s = 'this is a string'
s.title()的结果为'This Is A String'
s.capitalize()结果为'This is a string'
s = 'this is a string'
s.title()的结果为'This Is A String'
s.capitalize()结果为'This is a string'
2015-06-27
for i in range(1, 4):
def f():
return i*i
fs.append(f)
之所以输出是999,是因为在调用函数时,函数内使用的i所指向的内存其实是循环变量i所指向的内存,其已经改变。
而我们只需要让函数单独指向一个属于它的内存就可以了。
def count():
fs = []
for i in range(1, 4):
def f(a = i):
return a*a
fs.append(f)
return fs
def f():
return i*i
fs.append(f)
之所以输出是999,是因为在调用函数时,函数内使用的i所指向的内存其实是循环变量i所指向的内存,其已经改变。
而我们只需要让函数单独指向一个属于它的内存就可以了。
def count():
fs = []
for i in range(1, 4):
def f(a = i):
return a*a
fs.append(f)
return fs
2015-06-27
return 'A' if self.__score-90>=0 else 'B' if self.__score-60>=0 else 'C'
2015-06-27