我知道函数map
。它的用法是
new_list = map(func, list)
但是*map(func, list)
是什么意思呢?它被用来
这意味着从map()
返回的iterable将被解包为函数的参数。也就是说,不是调用函数并将iterable对象作为单个参数传递,而是将iterable的各个元素作为单个参数传递。
>>> def foo(a, b, c): print "a:%s b:%s c:%s" % (a, b, c)
...
>>> x = [1,2,3]
>>> foo(*x)
a:1 b:2 c:3
扁平化处理chain()
from itertools import chain
# a list of odd numbers
odd =[1, 3, 5, 7, 9]
# a list of even numbers
even =[2, 4, 6, 8, 10]
# chaining odd and even numbers
numbers = list(chain(odd, even))
print(numbers)
# [1,2,3,4,5,6,7,8,9,10]
zip()配对操作
a=[1,4,5,6,70]
zip([a[i:] for i in range(2)])
#n-gram=2
#(1,4) (4,5) (5,6) (6,70)
str.zfill() 对于格式化填充0有帮助
str(12.2).zfill(5)
# output: 012.2
4:24:1
h,m,s=4,24,1
print('{}:{}:{}'.format(str(h).zfill(2),str(m).zfill(2),str(s).zfill(2))
# output: 04:24:01
list.sort(reverse=True)
weight = [1,4,5,4,2]
weight.sort(reverse=True)
# weight [5,4,4,2,1]