Person.__init__(self,name,gender)为调用未绑定的父类构造方法,需要显示的将父类的构造方法,
用super(Teacher,self).__init__(name,gender)时要将父类隐藏,
使用super的好处是如果子类继承多个父类,只调用一次就好,但如果只有一个父类,则第一种更为直观
用super(Teacher,self).__init__(name,gender)时要将父类隐藏,
使用super的好处是如果子类继承多个父类,只调用一次就好,但如果只有一个父类,则第一种更为直观
2018-02-21
f1, f2,f3 = count() 意思是f1=count()[0],f2=count()[1],f3=count()[2] 因为 调用count()时返回3次
2018-02-19
Another solution:
===========
import math
def is_sqr(x):
sqr = math.floor(math.sqrt(x))
return x == sqr * sqr
print filter(is_sqr, range(1, 101))
===========
===========
import math
def is_sqr(x):
sqr = math.floor(math.sqrt(x))
return x == sqr * sqr
print filter(is_sqr, range(1, 101))
===========
2018-02-19
http://www.cnblogs.com/cenyu/p/5713686.html
Python的hasattr() getattr() setattr() 函数使用方法详解
Python的hasattr() getattr() setattr() 函数使用方法详解
2018-02-19
继承 object 类的是新式类,不继承 object 类的是经典类,在 Python 2.7 里面新式类和经典类在多继承方面会有差异:
Python 为什么要继承 object 类? - 邹冲的回答 - 知乎
https://www.zhihu.com/question/19754936/answer/202650790
Python 为什么要继承 object 类? - 邹冲的回答 - 知乎
https://www.zhihu.com/question/19754936/answer/202650790
2018-02-19
大概意思就是不能直接引用外层函数的循环变量(或者会发生变化的变量),因为这些变量会发生变化,使得内部函数使用这些变量时与预期值不符。可以通过引入一个中间变量来实现(相当于在内部函数里使用了一个局部变量)。
def count():
fs = []
for i in range(1, 4):
def f():
j=i
return lambda : j*j
fs.append(f())
return fs
f1, f2, f3 = count()
print f1(), f2(), f3()
def count():
fs = []
for i in range(1, 4):
def f():
j=i
return lambda : j*j
fs.append(f())
return fs
f1, f2, f3 = count()
print f1(), f2(), f3()
2018-02-18
pip不是内部命令或外部命令
1.在环境变量中添加pip.exe的路径,c:\Python27\Scripts\
2.命令提示符进入到pip.exe的路径中c:\Python27\Scripts,使用cd 文件名
3.输入easy_inatall pip
4.在使用pip install web.py就可以了
1.在环境变量中添加pip.exe的路径,c:\Python27\Scripts\
2.命令提示符进入到pip.exe的路径中c:\Python27\Scripts,使用cd 文件名
3.输入easy_inatall pip
4.在使用pip install web.py就可以了
2018-02-18
def calc_prod(lst):
def lazy_calc_prod():
def prod(x, y):
return x * y
return reduce(prod, lst)
return lazy_calc_prod
f = calc_prod([1, 2, 3, 4])
print f()
def lazy_calc_prod():
def prod(x, y):
return x * y
return reduce(prod, lst)
return lazy_calc_prod
f = calc_prod([1, 2, 3, 4])
print f()
2018-02-18
sorted(iterable, *, key=None, reverse=False)
'Z'的ASCII码比'a'小
????????
'Z'的ASCII码比'a'小
????????
2018-02-18
class Fib(object):
def __call__(self,num):
l=[0,1]
for i in range(num-2):
l.append(l[-1]+l[-2])
print l
f = Fib()
print f(10)
直接call就ok,够简单了吧!
def __call__(self,num):
l=[0,1]
for i in range(num-2):
l.append(l[-1]+l[-2])
print l
f = Fib()
print f(10)
直接call就ok,够简单了吧!
2018-02-18