def calc_prod(lst):
def f():
return reduce(lambda x,y:x*y,lst)
return f
f = calc_prod([1, 2, 3, 4])
print f()
def f():
return reduce(lambda x,y:x*y,lst)
return f
f = calc_prod([1, 2, 3, 4])
print f()
2015-07-23
def cmp_ignore_case(s1, s2):
return -1 if s1[0].upper()<s2[0].upper() else 1
print sorted(['bob', 'about', 'Zoo', 'Credit'], cmp_ignore_case)
return -1 if s1[0].upper()<s2[0].upper() else 1
print sorted(['bob', 'about', 'Zoo', 'Credit'], cmp_ignore_case)
2015-07-23
import math
def is_sqr(x):
return math.sqrt(x)==math.floor(math.sqrt(x))
print filter(is_sqr, range(1, 101))
def is_sqr(x):
return math.sqrt(x)==math.floor(math.sqrt(x))
print filter(is_sqr, range(1, 101))
2015-07-23
在Python 2里,filter()方法返回一个列表,这个列表是通过一个返回值为True或者False的函数来检测序列里的每一项得到的。
在Python 3里,filter()函数返回一个迭代器,不再是列表。打印出的是地址
在Python 3里,filter()函数返回一个迭代器,不再是列表。打印出的是地址
2015-07-22
我觉得写key参数比cmp参数方便:
你们对比一下:
cmp = lambda x, y: cmp(x.lower(), y.lower())
key = lambda x: x.lower()
你们对比一下:
cmp = lambda x, y: cmp(x.lower(), y.lower())
key = lambda x: x.lower()
2015-07-22
其实float类型有一个方法是is_integer()
所以这样可能是最简的写法了:
def is_sqr(x):
return math.sqrt(x).is_integer()
所以这样可能是最简的写法了:
def is_sqr(x):
return math.sqrt(x).is_integer()
2015-07-22
def format_name(s):
return s[:1].upper() + s[1:len(s)].lower()
print map(format_name, ['adam', 'LISA', 'barT'])
return s[:1].upper() + s[1:len(s)].lower()
print map(format_name, ['adam', 'LISA', 'barT'])
2015-07-21
def count():
fs = []
for i in range(1, 4):
def f(i=i):
return i*i
fs.append(f)
return fs
f1, f2, f3 = count()
print f1(), f2(), f3()
fs = []
for i in range(1, 4):
def f(i=i):
return i*i
fs.append(f)
return fs
f1, f2, f3 = count()
print f1(), f2(), f3()
2015-07-20
def calc_prod(lst):
def m():
return reduce(lambda x,y:x*y,lst)
return m
f = calc_prod([1, 2, 3, 4])
print f()
def m():
return reduce(lambda x,y:x*y,lst)
return m
f = calc_prod([1, 2, 3, 4])
print f()
2015-07-20
def cmp_ignore_case(s1, s2):
s1=s1.lower()
s2=s2.lower()
if s1 > s2:
return 1
if s1 < s2:
return -1
return 0
print sorted(['bob', 'about', 'Zoo', 'Credit'], cmp_ignore_case)
s1=s1.lower()
s2=s2.lower()
if s1 > s2:
return 1
if s1 < s2:
return -1
return 0
print sorted(['bob', 'about', 'Zoo', 'Credit'], cmp_ignore_case)
2015-07-20