import functools
def sort(data,lower):
if lower==True:
data=map(lambda x:x.lower(),data)
return sorted(data)
sorted_ignore_case = functools.partial(sort,lower=True)
print sorted_ignore_case(['bob', 'about', 'Zoo', 'Credit'])
def sort(data,lower):
if lower==True:
data=map(lambda x:x.lower(),data)
return sorted(data)
sorted_ignore_case = functools.partial(sort,lower=True)
print sorted_ignore_case(['bob', 'about', 'Zoo', 'Credit'])
2019-03-13
class Person(object):
def __init__(self, name,score):
self.name=name
self.__score=score
p = Person('Bob',59)
print p.name
try:
print p.__score
except AttributeError:
print 'AttributeError'
def __init__(self, name,score):
self.name=name
self.__score=score
p = Person('Bob',59)
print p.name
try:
print p.__score
except AttributeError:
print 'AttributeError'
2019-03-13
def __cmp__(self, s):
if self.score < s.score:
return 1
elif self.score > s.score:
return -1
elif self.score == s.score:
return cmp(self.name, s.name)
if self.score < s.score:
return 1
elif self.score > s.score:
return -1
elif self.score == s.score:
return cmp(self.name, s.name)
2019-03-12
最新回答 / qq_慕运维2396039
try: print (p.__score)except AttributeError: print("AttributeError")注意缩进
2019-03-10
已采纳回答 / 年少无为又自卑
如果 x 应该排在 y 的前面,返回 -1,如果 x 应该排在 y 的后面,返回 1。如果 x 和 y 相等,返回 0。且看上面这一句话,调用函数后,函数会返回值,这几个值分别是-1,0,1,如果返回-1,那么就说明x应该排在y的前面,比如第一次传入,调用函数后,x的 形式参数为36,y的形式参数为5,那么按照函数内部的语句功能,x>y,也即36>5,那么返回-1,这样就通知sorted高阶函数把36排在5的前面,以此类推直到排序完成
2019-03-10
import math
def is_sqr(x):
return x==int(math.sqrt(x))**2
print filter(is_sqr, range(1,101))
def is_sqr(x):
return x==int(math.sqrt(x))**2
print filter(is_sqr, range(1,101))
2019-03-07
最赞回答 / 薛定谔与猫
这个其实吧,我觉得不会用到,我们做开发的时候有规范,像这样接收任意参数作为属性,其实不会遇到。因为这样的话每个调用的开发都可能想出各种各样的属性,你根本没有数据规范,甚至说同样意思的属性,也会有五花八门的英语名称,你怎么整理和规范属性呢,取出的时候难道去猜测全部的可能?或者全部遍历出来再写一套程序自动规范?如果那样还不如一开始就在设计类的时候就设计好不是吗?
2019-03-05