在Python 3.6版本里map函數和reduce函數的問題
上一節課的map函數在3.6版本是內置的
>>>def f(s):
return s.upper()[0]+s.lower()[1:]
>>> print (list(map(f,['sdgge','dgwREFG'])))
跟標答的不一樣要在map前面加list()
這節課reduce函數在3.6版本里需要導入
>>> def prod(x,y):
return x*y
>>> from functools import reduce
>>> print (reduce(prod,[2,4,6,8]))
reduce前面又不需要list()了
3.6版本什么時候需要加這個list啊?是跟這個函數內不內置有關嗎?
2019-08-16
reduce返回一個值當然不需要加list了
至于map前需要加list,可能與Python版本有關