-
Python strip() 方法用于移除字符串头尾指定的字符(默认为空格)。查看全部
-
map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。查看全部
-
map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。查看全部
-
高阶函数:能接收函数做参数的函数 1.变量可以指向函数 2.函数的参数可以接收变量 3.一个函数可以接收另一个函数作为参数 4.能接收函数作为参数的函数就是高阶函数查看全部
-
欧几里德算法 欧几里德算法又称辗转相除法, 用于计算两个整数a, b的最大公约数。其计算原理依赖于下面的定理: 定理: gcd(a, b) = gcd(b, a mod b) 证明: a可以表示成a = kb + r, 则r = a mod b 假设d是a, b的一个公约数, 则有 d|a, d|b, 而r = a - kb, 因此d|r。 因此,d是(b, a mod b)的公约数。 加上d是(b,a mod b)的公约数,则d|b, d|r, 但是a = kb + r,因此d也是(a, b)的公约数。 因此,(a, b) 和(a, a mod b)的公约数是一样的,其最大公约数也必然相等,得证。 欧几里德的Python语言描述为: def gcd(a, b): if a < b: a, b = b, a while b != 0: temp = a % b a = b b = temp return a查看全部
-
参考代码: def gcd(a, b): if b == 0: return a return gcd(b, a % b) class Rational(object): def __init__(self, p, q): self.p = p self.q = q def __add__(self, r): return Rational(self.p * r.q + self.q * r.p, self.q * r.q) def __sub__(self, r): return Rational(self.p * r.q - self.q * r.p, self.q * r.q) def __mul__(self, r): return Rational(self.p * r.p, self.q * r.q) def __div__(self, r): return Rational(self.p * r.q, self.q * r.p) def __str__(self): g = gcd(self.p, self.q) return '%s/%s' % (self.p / g, self.q / g) __repr__ = __str__ r1 = Rational(1, 2) r2 = Rational(1, 4) print r1 + r2 print r1 - r2 print r1 * r2 print r1 / r2查看全部
-
笨拙的辗转相除查看全部
-
要表示有理数,可以用一个Rational类来表示: class Rational(object): def __init__(self, p, q): self.p = p self.q = q p、q 都是整数,表示有理数 p/q查看全部
-
示例代码查看全部
-
连滚带爬。。。查看全部
-
NONE = 0查看全部
-
如果list不仅仅包含 Student 类,则 __cmp__ 可能会报错: L = [Student('Tim', 99), Student('Bob', 88), 100, 'Hello'] print sorted(L) 请思考如何解决。查看全部
-
def __cmp__(self, s): if self.score == s.score: return cmp(self.name, s.name) return -cmp(self.score, s.score)查看全部
-
如果要把一个类的实例变成 str,就需要实现特殊方法__str__() 这时print 一个Person对象,就会按照定义的方式来显示 但如果不用print语句,直接在命令提示符下敲入一个Person对象,依然按照系统原有方式显示,这是因为Python 定义了__str__()和__repr__()两种方法,__str__()用于显示给用户,而__repr__()用于显示给开发人员 一个偷懒的定义__repr__的方法: class Person(object): def __init__(self, name, gender): self.name = name self.gender = gender def __str__(self): return '(Person: %s, %s)' % (self.name, self.gender) __repr__ = __str__查看全部
-
自己实现特殊方法可以完成自己想要的功能,但是有关联的特殊方法都必须同时实现 比如如果实现了__getattr__特殊方法,则与之关联的__setattr__和__delattr__也必须同时实现查看全部
举报
0/150
提交
取消